Mac下Airtest之IOS自动化测试环境搭建
原创: George555 公众号:测试江湖路
如果这些内容对你有帮助,也可以打开微信扫一扫,加关注:
最近在研究ios平台怎么做ui自动化更方便,后来发现网易出品的Airtest,用来做ios的自动化还挺方便,接下来总结下怎么搭建环境。
引用下官方说明:
###Airtest Project提供了一种新的思路,使用python作为脚本语言,基于可视化的方式进行自动化脚本编写。并使用了优化后的WebdriverAgent(iOS-Tagent)作为运行时设备控制的底层框架,其极大的优化了执行效率,使得iOS自动化测试达到了前所未有的简单和便捷。###
因此要用Airtest来做IOS的自动化测试,首先得在Mac电脑的Xcode上搭建好IOS-Targent,然后才能在AirtestIDE的IOS板块中用ip+端口连接访问IOS的设备(当然这时候你也可以在windows的系统上来访问编写自动化脚本)。
本文只记录了基于Airtest怎么搭建IOS自动化测试环境,需要了解Airtest之IOS自动化测试的请持续关注本公众号更新。
1.Mac系统版本:MacOS High Sierra V10.13.6
2.下载xcode,版本:V10.1
3.下载iOS-Tagent-master,版本:github下载最新
4.下载airtestIDE,版本:AirtestIDE_2018-11-06_py3_Mac10-12
打开xcode导入(File-open)本地下载的ios-tagent框架:需要找到ios-tagent目录下的WebDriverAgent.xcodeproj
选择Automatically manage signing,则可以自动识别证书(个人免费证书,可以在模拟器上调试)
如果不使用个人免费证书,则可以导入应用对应开发者证书:
修改IOS Deployment Target:
修改Product Bundle Identifier: --随意修改包名就可以
选择运行项目:在xcode工具栏-Product-Scheme-WebDriverAgentRunner,选中此运行环境
选择模拟器:在xcode工具栏-Product-Destination-选择需要运行的模拟器:
注意:a.此时根据实际项目需要选择远行的ios版本的模拟器,或者进入底部的Add Additional Simulators界面,安装需要的模拟器环境;b.如果是想连接真机测试,手机usb接入电脑后,此处列表会有选择真机的设备。
下图为选择模拟器的界面:---如果列表中没有所需模拟器,可以点左下角的+来添加所需对应ios版本的模拟器:
接下来在airtestIDE中连接下吧,在ios APP connect输入上图日志里这个http://192.168.0.109:8100 来连接你的ios设备吧(当然此处也可以在windows下的airtestIDE界面连接ios设备,前提是保证windows和mac是同一个局域网)
上面说了连接模拟器来做ios自动化,用usb连接真机测试同模拟器类似,那如果想连接wifi网络下的ios设备呢?
一般情况下,需要通过USB连接的方式访问手机上的代理,而直接通过wifi对手机进行访问可能会出现问题,这里官方有提供一种方法:使用iproxy方式连接,执行命令:
$ brew install libimobiledevice
$ iproxy 8100 8100
要使用brew命令则必须先在mac的终端安装Homebrew,见下图:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)
出现上面的提示表示Homebrew安装成功,可以用brew命令安装libimobiledevice了。
安装成功后,执行完iproxy 8100 8100,就可以在mac电脑的浏览器中使用http://127.0.0.1:8100/status来查看到一些JSON格式的手机信息,即表示启动成功。如下图:
接下来就可以在Mac电脑AirtestIDE中使用http://127.0.0.1:8100/ 来连接IOS设备了
特殊说明:如果你想在局域网其他电脑(比如另一台windows电脑)通过这个ip+端口来连接ios设备怎么办? 这个好办,使用网络ip就可以,查询搭建IOS-target的mac电脑ip,然后使用此ip:8100端口就可以在windows电脑上查询到上图的手机信息了,这样就实现了在windows电脑远程连接ios设备的场景。(~~~是不是很easy呢),这里再帖张windows下访问的图:
经过这一系列的辛苦,环境终于整好了,开始撸代码吧,后面继续总结分享。
#####接下来总结下过程中可能遇到的问题#####:
【问题1】:在工具栏-product-test执行后,界面提示:could not launch “WebDriverAgentRunner”
此问题是因为WDA在移动设备上安装了WebDriverAgent的包后,没有在系统设置中添加信任。
解决办法:
步骤1:在移动设备上进入设置-通用-描述文件与设备管理添加信任,如下图:
步骤2:此处添加信任后,再次在xcode中点击Test即可。(如果发现还是Test Failed,可以卸载app后,重新开始步骤1)
【问题2】大家在搭建环境时候经常会遇到无法连接ios设备
这时候请注意官方提供的xcode和ios的支持版本: (20191112日之前支持版本如下)
iOS | Xcode |
---|---|
10.x-12.x | 10.x |
≥ 9.3 | ≥ 9.3 |
#####欢迎大家加群交流####
QQ群:832468437
微信群请先加群主微信,群主会拉各位小伙伴进群。