Airtest是一个基于图像识别的UI自动化平台
1.下载并编译iOS-target
ios-target基于webdriver,并对适用airtest进行了定制,并删除了不必要的内容。
下载地址
我下载的是ios-target_master.zip文件,解压后将文件夹重命名为ios_target
2.用xcode打开这个文件夹,然后用类似wda的编译方法,连接手机到mac,
3.修改target中的配置,这里需要改动的内容有两个,1)在signing中选择开发者的team,
2)在target-info中找到Bundle Identifier,并进行修改
上图中的id需要自定义个,常规做法是在Runner后加一些自己的内容(例如target,因为私人开发者有id数量限制,建议每修改一次id,在笔记中做下记录)
4.在xcode中编译
product
->Scheme
->WebDriverAgentRunner
product
->Destination
-> iphone(这个是我自己的手机)
然后product-test运行,这是会在手机上装一个webdriveragentrunner-runner的没有图标的应用
5.连接手机到Airtest
1)安装libimobiledevices
brew install libimobiledevice
2)iproxy 8100 8100
3)在xcode中
显示debug Area,并在调试信息中查看手机的ip,ServerURLHere->http://xxx.xxx.xxx.xxx:port<-ServerURLHere,拿到ip之后在浏览器输入http://ip:port/status(这里有个问题Could not load IOSurface for time string. Rendering locally instead
)解决方法可以参考https://www.jianshu.com/p/ccc4a12a253c?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
6.inspector
看到这个界面说明连接成功了,试下inspector
7.因为airtest默认不支持像安卓那样实时显示屏幕所以要下载wdaproxy
https://github.com/openatx/wdaproxy
8.安装wdaproxy
从名字看是一个wda的代理
brew install openatx/tap/wdaproxy
9.获取手机uuid,通过itunes可以查看到uuid
然后运行
wdrproxy -p 8100 -u +上文中的uuid
10.在AirtestIDE 中iOScontent的输入框中输入步骤5中的ip+端口,点击content,
以上就是Airtest连接iOS的配置,欢迎加我好友一起讨论。