本文介绍如何使用tidevice+WDA+airtest/facebook-wda实现在Windows上进行IOS APP自动化测试

环境准备

Windows Python环境

Python 3.6+

WebDriverAgent安装

下载最新的项目到Mac:https://github.com/appium/WebDriverAgent

$ git clone https://github.com/appium/WebDriverAgent.git

用Xcode打开
Xcode -> Preference,添加账户

修改WebDriverAgentRunner这个项目的Bundle ID(不要与原来的重复就行)

Product —> Destination —> 选择真机设备

Product —> Scheme —> WebDriverAgentRunner(选择Scheme为WebDriverAgentRunner)

Product —> Build For —> Testing,将项目运行到真机设备上

这时手机就装上了一个名为WebDriverAgentRunner的应用

注意如果用的是企业证书安装或打包的ipa包进行安装可能需要在通用设置设备管理中添加信任后才能正常运行WDA。(如果没有Mac,可以请IOS的同事帮忙安装)

tidevice库安装

pip install -U tidevice

安装成功后查看版本:

> tidevice version
tidevice version 0.10.1

此时,将手机连接到Windows,就可以查看连接设备信息

> tidevice list
UDID                       SerialNumber    NAME         MarketName      ProductVersion  ConnType
0000xxx-00xx65xx22xx00xx  DNXXW28XXDYV    iPhone18臻享版  iPhone 14                 15.7  usb> tidevice list --json
[{"udid": "0000xxx-00xx65xx22xx00xx","serial": "DNXXW28XXDYV","name": "iPhone18臻享版","market_name": "iPhone 14","product_version": "15.7","conn_type": "usb"}
]

此外,tidevice还有许多常用指令

# 查看设备信息
tidevice info
# 截图(注意这是将截图保存到xx.jpg文件中,所以该图片是保存在电脑端的当前输指令的目录下,而不是在手机中)
tidevice screenshot xx.jpg
# 启动应用程序
tidevice lanch Bundle ID (Bundle ID表示包名)
如:
tidevice launch tv.danmaku.bilianime
# 停止程序
tidevice kill Bundle ID
# 查看第三方包名(Bundle ID)
tidevice applist
# 重启设备
tidevice reboot# 关机
tidevice shutdown
# 安装应用# 安装本地包
tidevice install C:\example.ipa# 安装远程包
tidevice install https://.....ipa# 多台手机时,指定uid安装
tidevice -u uid  install C:\test.ipa
# 卸载应用
tidevice uninstall 包名
# 多台手机时,指定uid卸载应用
tidevice -u uuid uninstall 包名
# 查看电池信息
tidevice info --domain com.apple.mobile.batterytidevice battery
# 更多帮助
tidevice -h

启动WDA驱动器

tidevice -u [udid] wdaproxy -B [wda 的 bundle Id] --port 8100
例:
tidevice -u 1238101-00012345688001E wdaproxy -B com.facebook.wda.xxxnApp --port 8100

启动成功会有如下提示:

验证启动WDA是否成功

在浏览器中输入http://localhost:8100/,如果有返回信息,则证明WDA启动成功。

http://localhost:8300/status可以查看当前设备的状态,获取与wda通信session id

同时,启动成功后手机屏幕上会有Automation Running Hold both volume buttons to stop的水印。

完成上述环境配置后,也意味着IOS可以脱离Mac,使用Windows进行自动化操作了。

Python + facebook-wda 自动化

安装facebook-wda

pip install -U facebook-wda
import wda
ct = wda.Client("http://localhost:8100")# 打印设备信息
print(ct.info)# 三种打开应用的方式
# ct.session("com.sina.weibo")
# ct.session().app_activate("tv.danmaku.bilianime")
# ct.session().app_launch("com.alipay.iphoneclient")# 打印当前所在APP的Bundle ID
print(ct.session().app_current())# 截图
# ct.screenshot(r"C:\Users\sg0100\Desktop\test.jpg")

airtest 自动化

安装airtest,打开后在主界面的右下方 “连接IOS设备” 会自动获取到连接地址,点击连接即可

from airtest.core.api import *
from airtest.report.report import simple_report# auto_setup(__file__, logdir=True, devices=["ios:///http://127.0.0.1:8100",])
auto_setup(__file__, logdir=True)
init_device(platform="IOS",uuid="http://localhost:8100/")start_app("com.apple.Preferences") # 打开【设置】touch(Template(r"tpl1675671163913.png", record_pos=(-0.197, 0.638), resolution=(1170, 2532)))   # 点击【通知】

Windows上实现 IOS 自动化测试相关推荐

  1. Windows上实现iOS APP自动化测试:tidevice + WDA + facebook-wda / appium

    本文介绍如何在Windows下构建iOS APP自动化测试环境,采用的主要工具为tidevice,WebDriverAgent,facebook-wda或者appium. 目录 测试架构介绍 WebD ...

  2. windows上搭建IOS开发环境

    在Windows上开发IOS主要使用GNUstep工具来进行开发,只能说是对Object-C的学习吧,最好的开发环境肯定是Xcode,也可以采用Windows下的图形界面ProjectCenter的I ...

  3. 在WINDOWS上开发IOS应用的方法

    在WINDOWS上开发IOS应用的方法 1,虚拟机上安装MAC系统,里面装XCODE 2,WINDOWS上安装code blocks,这个IDE可以直接在WIN上编译XCODE工程: 最新的IOS在w ...

  4. linux 模拟化 iphone,PC 秒变 iPhone!教你在 Windows 上运行 iOS 系统

    原标题:PC 秒变 iPhone!教你在 Windows 上运行 iOS 系统 如果你是一位资深手游玩家,那么你一定会有过在 Windows 电脑上安装手游模拟器的经历:用电脑玩手机游戏一定能秒杀全场 ...

  5. Windows实现appium+iOS自动化测试

    在前面的文章介绍了Windows上安装配置tidevice,环境搭建好后就实现了在Windows运行iOS自动化的第一步,接下来本文重点介绍在Windows上如何运行iOS自动化测试. 如果没有安装好 ...

  6. TiDevice,Windows上运行IOS自动化

    TiDevice Tidevice是由阿里开发的,不依赖 Xcode 就可以启动 WebDriverAgent( WDA ),因此可以在Windows系统直接运行xctest. Tidevice安装 ...

  7. windows上进行IOS 应用开发+上架全流程的解决方案(uniapp)

    本人通过查阅网上资料和apple开发文档完全走了一遍上架流程,使用的IDE是uniapp,使用的uni框架编写app,使用云发布.成功上架两款小产品,在这里简单的说一下整体的流程. 一.物料准备: i ...

  8. Windows上安装IOS虚拟机

    1.安装VMWare12 自行百度下载. 2.执行unlocker208 1)直接以管理员身份运行win-install.cmd 2)地址:xxxxxxxxxxxxxxx(待上传补充) 3.处理IOS ...

  9. 使用windows电脑做IOS自动化测试

    一:搭建环境 python 3.6 以上 node jdk iTunes及驱动 pip3 install -U "tidevice[openssl]"  -->window电 ...

最新文章

  1. 登录文档服务器,服务器登录login
  2. 美多商城之购物车(购物车存储方案)
  3. linux进程控制程序设计论文,嵌入式,linux进程控制程序设计
  4. 干货丨从起源到具体算法,这是一份适合所有人读的深度学习综述论文
  5. ssh登陆分布式服务器进行编程
  6. 基于汇编语言的电子琴设计(1)
  7. helm部署SkyWalking
  8. spring @Value注解#和$区别
  9. PL/SQL 连接配置
  10. linux 中断服务程序,request_irq() linux注册中断服务
  11. layer normalization 缺点_【收藏贴】不同种类质谱仪优缺点分析对比!
  12. matplotlb 进阶之Styling with cycler
  13. 【C语言】指针(野指针)
  14. SegNet(持续更新)
  15. 12张手绘图,我搞懂了微服务架构
  16. Docker - Docker Image及Image命令详解
  17. 利用阿里云下载国外镜像,国内顺畅下载k8s.gcr.io的镜像
  18. 小程序 function(res)与(res) =的区别
  19. freemarer代码生成案例
  20. OpenAI打破文本和图像次元壁,提出基于对比学习的多模态预训练模型CLIP

热门文章

  1. 计算机毕业设计 基于JavaWbe的校友录管理系统(源码+论文)
  2. MIKE21 教程 3.1 随时间变化的时间序列文件制作(.dfs0文件制作)
  3. MIKE 21 教程 1.5 基于卫星影像绘制河道边界
  4. 大厂必备!springboot入门菜鸟教程,面试资料分享
  5. Linux(Ubuntu)下,生成C语言可执行文件和汇编文件
  6. Linux下OpenSSL自签ssl证书
  7. m6000查看端口状态_M6000日常查看维护命令 -
  8. python实现Moaic数据增强
  9. Java项目:SSM图书馆图书管理借阅书籍管理系统
  10. ffmpeg提取音频文件命令并转化成pcm格式