Mac版 Xcode+Tagent+airtest环境搭建-详细操作步骤
在IOS平台进行Airtest测试,需要进行如下部署。
1. iOS-Tagent
在手机上创建一个WebDriver服务器,可用于远程控制iOS设备,定位UI元素
- 1.1 下载 iOS-Tagent 到本地电脑
git clone git@github.com:AirtestProject/iOS-Tagent.git
- git clone https://github.com/AirtestProject/iOS-Tagent.git
- 下载完成后,双击WebDriverAgent.xcodeproj,启动Xcode
- 1.2 使用Xcode打开 iOS-Tagent, 用数据线连接iPhone至Mac
连接iPhone后,在iPhone设备上弹出的“是否信任Mac设备”,选择信任
选择设备,在菜单栏
product
->Destination
-> 选择你的真机
- 1.3 使用apple ID苹果账号或苹果开发者账号,登录Xcode,并注册真机设备
左侧导航栏,选择
WebDriverAgentRunner
->TARGETS
->WebDriverAgentRunner
->Signing & Capabilities
->Team
如图,会报错,需要添加开发者证书
部署iOS测试平台需要苹果开发者证书,现在使用个人Apple ID登陆即可,不需要另外注册付费开发者账号
个人版的免费证书,每隔7天左右,要手动更新开发者证书;
需要手动的在iPhone中选择信任证书,通用->设备管理->选择信任;
最多支持3台设备;
资金富裕、且准备重点学习iOS的,可以申请苹果开发者账号,可规避一些其他异常
选择
Team
->Add an Account
-> 登录苹果账号(个人免费或开发者账号)选择
TARGETS
->WebDriverAgentRunner
->Build Settings
->Basic
找到且双击
Product Bundle Identifier
值,填写一个属于自己独一无二的字串,Xcode会联网检查Product Bundle Identifier,此字段要求唯一标志,多试几个,总有可以的。如 ('com.xxx.webDriverAgent-test123')
回到,上文提过的
Signing & Capabilities
界面,查看有无报错
如上图无报错,则继续下面步骤;若有报错,查看 登陆开发者账号
- 1.4 启动Test,在菜单栏
product
->Test
。当你看到这样的日志的时候,代表 iOS-Tagent 已经启动成功了
过程中,Xcode可能会请求密码权限或其他权限 —> 全部允许 —> 不要拒绝,输入的是Mac的登录密码,点击始终允许
信任设备
第一次安装 iOS-Tagent 的时候,你会遇到下面的错误提示框。这时候需要信任应用程序才可以进行启动,在手机上 设置
-> 通用
-> 描述文件与设备管理
,从而对应用WebDriverAgentRunner进行信任,再次启动product
-> Test
,会黑屏一下,等待就好,然后会正常执行。
打开日志输出窗口,如图,显示两行t= XXX表示启动成功。(先前安装的xcode12.0,不兼容运行报错,如图一,后来卸载安装xcode11.4,正常)
- 1.5 其他
如果发生异常,请查看常见问题整理的参考文档 也可以从以下链接了解更多的关于如何成功启动这个项目的方法:
facebook-WebDriverAgentappium-WebDriverAgentiOS真机如何安装WebDriverAgent
2. 设置代理
iproxy 可以把iPhone端口映射到电脑端口,那么就可以通过访问电脑的端口访问到手机的端口了。
一般情况下,需要通过设置usb代理的方式访问手机上的Agent,直接通过wifi对手机进行访问可能会出现问题,具体的原因可以参考 Issues 和 detail
- 2.1 通过 Homebrew 安装iproxy
$ brew install libimobiledevice --HEAD
- 2.2 运行iproxy
$ iproxy 8100 8100
启动成功后,可以试着在浏览器访问 http://127.0.0.1:8100/status ,如果访问成功并且可以看到一些json格式的手机信息,即表示启动成功。此时,访问 http://127.0.0.1:8100/inspector 可以看到iPhone屏幕投影在浏览器上
有一点需要 注意 的,iproxy只能监听localhost,所以如果你想使用 Windows 连接iPhone,可以改用 wdaproxy。具体步骤为:
- 使用usb数据线连接iPhone至Mac
- 在Mac上运行 wdaproxy,wdaproxy可以把iPhone端口映射到Mac端口,具体安装运行步骤可参考 https://github.com/openatx/wdaproxy
- 在Windows上的AirtestIDE iOS地址输入框,输入Mac的ip地址和端口,点击"connect"按钮
3. AirtestIDE
通过ip方式连接iPhone,实时刷新界面,可进行UI测试
完成上面两个步骤后,就可以在AirtestIDE的iOS地址栏填入地址 http://127.0.0.1:8100 ,点击 “connect” 连接设备,开始编写你的Airtest测试脚本了