mac搭建基于wda\airtest 的iOS自动化测试环境

在IOS平台进行Airtest测试,需要进行如下部署:

1、本地安装airtest库

打开终端输入命令安装Airtest库及其依赖项:

复制代码
pip install airtest

安装用于连接iOS设备的wda库:

复制代码
pip install -U facebook-wda

2.使用iOS-Tagent 工具来部署 iOS 真机

在当前mac生成ssh密钥,添加代理后生成并配置SSH公钥到GitHub。http://t.csdnimg.cn/2i6JI?spm=1011.2480.3001.8118

克隆iOS-tagent项目至本地

复制代码
git clone https://github.com/AirtestProject/iOS-Tagent.git

3.下载xcode,连接真机,启动iOS-Tagent

配置xcode开发者账号(可找iOS开发获取开发者账号支持:提供apple账号-开发者账号发送邀请-通过邀请)。

打开Xcode,只开发调试不发布app可通过xcode自动生成开发者证书。选择Team为自己的开发者账号,勾选自动生成开发证书

打开Xcode settings添加开发者账号。

这里坑特别多,建议提前把mac、iPhone、xcode都升级至最新系统,由于体型较大临时更新很慢,不更新很容易不匹配。

Xcode15.4以上选择真机运行时,需下载iOS17模拟器,但最坑的是直接根据Xcode运行目标设备中的提示点击"Get"下载总是中断,且无法断点续传,解决方法是官网自行下载iOS_17_Simulator_Runtime

苹果模拟器资源地址

下载完成后

使用命令行按照以下步骤进行安装:

复制代码
sudo xcode-select -s /Applications/Xcode.app //新版本需要sudo权限 xcodebuild -runFirstLaunch xcrun simctl runtime add "~/Downloads/iOS_17.5_Simulator_Runtime.dmg"

执行完成,xcode即可显示真机设备

启动Test,在菜单栏 product -> Clean Build Folder 之后,再 product -> Test 启动。

启动成功后Xcode控制台出现截图地址时,在手机上安装WDA完成。

4.设置代理

安装 Homebrew

复制代码
/bin/bash -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

通过 Homebrew 安装iproxy:

复制代码
brew install libimobiledevice

运行iproxy:

复制代码
iproxy 8100 8100

在浏览器访问 http://127.0.0.1:8100/status

如果显示无法连接,尝试访问:http://localhost:8100/status

如图所示则代表设置成功。

5.下载并打开AirtestIDE,连接设备

数据线连接手机至设备且WDA运行状态,可直接看到设备信息,点击连接。

如果由于版本问题无法显示手机窗口,可通过远程连接:

在Xcode的log窗口看到的ServerURLHere->http://localhost:8100<-ServerURLHere,可以直接用地址 http://localhost:8100 进行连接,在 AirtestIDE 的设备窗口输入地址,点击连接。(注,远程连接需iOS和Mac在同一个局域网下)

可以在编辑窗口开始编辑脚本。(这里的坑是IDE与macOS14.6系统有个兼容bug导致IDE脚本编辑窗黑屏无法输入)

解决方案是脱离IDE编辑器使用pycharm进行脚本编写。

相关推荐
Rudon滨海渔村5 小时前
iPhone上使用“库乐队”设置mp3铃声
ios·iphone·mp3·m4r·铃声
:-)6 小时前
修改mac电脑用户名
macos
Είναι η κοπέλα6 小时前
本地大模型部署完全指南:Ollama / vLLM / llama.cpp / MLX 四大引擎横评与选型实战
macos·llama·vllm
那年窗外下的雪.8 小时前
AIDC 学习日志|第 25 天|设备输出反推、MAC Flapping 与 EAD 撤销
前端·网络·git·学习·macos
星辰即远方8 小时前
RunLoop初步了解
macos·objective-c·cocoa
代码的小搬运工9 小时前
Runloop
macos·objective-c·cocoa
秋雨梧桐叶落莳9 小时前
【iOS】GCD内容整理
macos·ios·cocoa
Mr -老鬼9 小时前
EasyClick iOS USB版:USB HID功能详解与实战指南
ios·easyclick·易点云测·ios自动化
思盛iOS签名上架1 天前
ipa企业签名闪退是什么原因?
游戏·ios·testfight