Android客户端自动化UI自动化airtest从0到1搭建macos+脚本计划demo演示+全网最全最具体保姆级有步骤有图-CSDN博客
避坑系列-必读:
不要安装iOS-Tagent ,安装appium -这2个性子实在是差不多的都是为了安装wda。注意安装appium最新版本,安装完,git下载最新版本的wda(v8.1.0版本-source压缩包解压,代码更换原git下载的wda文件夹下的全部文件 否则各种源码语法报错)
一、底子环境
1. 安装jdk 选择jdk8 假如下载高版本 可能不匹配会失败
下载.dmg文件
苹果电脑 | macOS | jdk1.8 | 环境变量配置_jdk1.8 mac-CSDN博客
Java Downloads | Oracle
jdk环境变量配置
找到java home
qa@mac ~ % cd /Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
qa@mac ~ % vim .bash_profile
配置内容如下:
#JAVA
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
PATH=$JAVA_HOME/binPATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jarJAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
qa@mac ~ % source ~/.bash_profile 刷新配置文件
qa@mac ~ % java -version
假如安装了多个jdk 则删除
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-22.jdk/Contents/Home
$JAVA_HOME 体现
/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
2. 下载airiest
Airtest Project
3. 下载appium
https://github.com/appium/appium-desktop/releases
下载 Appium-Server-GUI-mac-1.22.3-4.dmg
4. MAC修改终端左侧体现的用户名
sudo scutil --set HostName Tmp
Tmp 就是你要修改的名字, 比如, 你要改成abc, 那么 执行下面的命令
sudo scutil --set HostName mac
重启终端生效
5. 下载xcode
打开App Store搜索xcode
6. 安装homebrew
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
下载源选择阿里巴巴
MAC安装brew保姆级教程_mac brew-CSDN博客
7. 安装python3.6.8,版本太高会导致airtest安装失败,下载地点:https://www.python.org/downloads/release/python-368/
我安装的Python Releases for macOS | Python.org 3.9.0版本
添加环境变量,执行open ~/.bash_profile,参加
alias python="/python安装路径/python3.6"
alias pip="/python安装路径/pip3.6"
保存后执行source ~/.bash_profile && python -V && pip -V检测安装版本是否乐成
如遇:排除错误 pip Command Not Found
1. 检查是否安装了pip
在Mac和Linux上,您可以使用以下命令检查是否安装了pip
python3 -m pip --version
假如pip安装正确,输出如下
pip 24.0 from /Users/qa/Library/Python/3.9/lib/python/site-packages/pip (python 3.9)
假如未安装pip,您可以按照此处相应操纵系统的安装步骤举行操纵
2. 将pip升级到最新版本
假如pip仍旧不工作,请尝试将pip升级到最新版本:
python3 -m pip install --upgrade pip
8. 安装OpenCV:执行pip3 install opencv-contrib-python
9. 安装poco:执行pip3 install pocoui
10. 下载carthage
brew install carthage
二、iOS端环境配置
参考资料:iOS真机安装WebDriverAgent图文详解-腾讯云开发者社区-腾讯云
1. 安装iOS-Tagent
git仓库下载代码
git clone https://github.com/AirtestProject/iOS-Tagent.git
下载上面的代码后,找到WebDriverAgent.xcodeproj这个文件,各版本位置可能会不一样,假如我提供的路径找不到,可以搜索下文件。/Users/qa/Desktop/2024/code/iOS-Tagent
2. 打开项目后,更改红框中两个文件的相干信息,team可以使用个人苹果id账号,Bundle identifier必要更改一下,不重复就可以了,我是直接在后面加点后缀
3. 假如是个人免费版的证书,还必要修改下WebDriverAgent的BundleID,随便加后缀,不要跟别人重复就好,这里发起可以加当前时间戳,比如:202106290903,假如是付费版开发者证书则不必要这步操纵。
4. 模拟器-更改完成后,手机用数据连接电脑
点击xcode顶部工具栏的product——Destination,点击自己的手机设备
如遇提拔下载iOS17.4 则下载 更新乐成后(8个G左右),正常
5. IntegrateApp选择机型 点击Product-Run 出现如图模拟器界面
6. 真机-用数据线连接iPhone至Mac
选择项目,在菜单栏 product -> Scheme -> WebDriverAgentRunner
选择设备,在菜单栏 product -> Destination -> 选择你的真机
启动Test,在菜单栏 product -> Test
7. 各种报错分析:如遇buildFailed 第54行报错
报错信息如下:Parameter of overriding method should be annotated with __attribute__((noescape))
办理办法:在参数前加 __attribute__((noescape))
修改前- (void)measureBlockCDUnknownBlockType)arg1;
修改后- (void)measureBlockCDUnknownBlockType)__attribute__((noescape))arg1;
参考https://www.jianshu.com/p/c536c3b81ac2
8. 再次执行product -> Test 弹框报错
Previous preparation error: Developer Mode disabled. To use 越狱兔的iPhone12 for development, enable Developer Mode in Settings → Privacy & Security.
办理办法:IOS开发之——Developer Mode DIsabled-CSDN博客
原因:iPhone设备开发者模式已关闭
打开iPhone的设置,搜索隐私与安全性-安全性-开发者模式 默认为关闭 打开
将开发者模式打开后,设备重启
重启设备后,输入密码开启,检察开发者模式是否打开
如遇The request to open "com.facebook.WebDriverAgentRunner20240401yutu.xctrunner" failed.
去iPhone -VPN与设备管理-信托证书
Xcode中设备恢复正常状态,再次执行product -> Test 弹框报错
iPhone端出现白色笔墨Automation Running Hold both volume buttons to stop
xcode控制台出现日志:
Test Case '-[UITestingUITests testRunner]' started.
t = 0.00s Start Test at 2024-03-27 15:04:36.614
t = 0.00s Set Up
ServerURLHere->http://169.254.168.151:8100<-ServerURLHere
每次build iPhone端会自动安装WebDriverAgent
9. 各种报错分析-Thread 1: "-[__NSXPCInterfaceProxy_XCTMessagingChannel_RunnerToDaemon _XCT_exchangeProtocolVersion:reply:]: unrecognized selector sent to instance 0x28146df90"
无解 看起来是源码的问题。。。。。。
参考资料(一)app自动化测试环境搭建(mac+ios+airtest )_automation running-CSDN博客
换一种方式安装appium
10. 安装appium 安装最新版本
Releases · appium/appium-desktop · GitHub
安装打开appium
11. 打开appium-webdriveragent 我的路径如图
/Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent
双击打开WebDriverAgent.xcodeproj
在xcode配置 更改红框中两个文件的相干信息,team可以使用个人苹果id账号,Bundle identifier必要更改一下,不重复就可以了,我是直接在后面加点后缀2024yutu
12. 连接iPhone手机重复步骤678
开启UI Automation,位置在:iPhone手机-设置-开发者-启用UI自动化
13. 安装appium:npm install -g appium
假如有问题那也必要安装 appium docker
安装完毕运行appium
默认端口为4723
在浏览器/airtest输入网页:http://127.0.0.1:4723/status
14. 如遇xcode build失败
办理办法-20240327亲测有效
[IOS自动化]Xcode build时报错: Cannot link directly with dylib/framework_cannot link directly with dylib/framework, your bi-CSDN博客
办理办法如下:
a. 假如你的appium版本是最新的,直接跳到第3步
否则卸载appium desktop(finder/application里找到app后直接拖到垃圾桶)
b. 下载安装最新的appium desktop: Releases · appium/appium-desktop · GitHub
c. finder/application里找到最新安装的appium app, 右击选择show package contents,定位到WebDriverAgent.xcodeproj地点路径:
参考:/Applications/Appium Server GUI.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent
d. 下载最新的WedDriverAgent: Releases · appium/WebDriverAgent · GitHub
下载Source.code即可
把下载好的WedDriverAgent里的全部内容更换到第三步的路径下(原内容可全部删除)
更换
e. 文件夹双击WebDriverAgent.xcodeproj, xcode自动打开。build乐成
iPhone安装完WebDriverAgentRunner-Runner后 在VPN与设备管理信托开发者APP 每次test(build)iPhone都会重新安装wda
15. 通过 Homebrew 安装iproxy
brew install libimobiledevice
16. 运行iproxy
iproxy 8100 8100
启动乐成后,可以试着在浏览器访问 http://127.0.0.1:8100/status ,假如访问乐成而且可以看到一些json格式的手机信息,即表示启动乐成 假如返回为空,可能是因为未安装appium导致的(暂不确定)
启动AirTestIDE,devices-iOS APP Connection处填写 http://127.0.0.1:8100 或者启动appium后填写http://127.0.0.1:4723/status 均可。点击connect
连接乐成后AirTest Assistant处点击录制即可针对操纵举行脚本录制
17. 假如更换iPhone设备或者断开连接 重新连接手机后必要先启动xcode
18. 如遇报错 xcode Exiting due to IDE disconnection. 重启iPhone 重启xcode再次test iPhone输入密码即可 Product-Test乐成后,iPhone体现界面如下
19. 安装appium-inspector。 git官网下载最新包
打开Appium Server GUI 点击搜索按钮 跳转到Appium inspector的git官网GitHub - appium/appium-inspector: A GUI inspector for mobile apps and more, powered by a (separately installed) Appium server
下载appium-inspector安装包
Releases · appium/appium-inspector · GitHub
参考资料
APP自动化之airtest(一)---环境搭建mac版&安卓真机连接_mac可以跑android手机机举行airtest测试吗-CSDN博客
APP自动化之airtest(二)---ios真机调试_ios-tagent真机调试-CSDN博客
https://blog.51cto.com/u_16213625/8154325
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |