搭建Mac+Java+appium+IOS真机自动化环境
一、安装前环境准备
1、确保电脑已经有homebrew(包管理器) 下载链接[https://brew.sh/]
2、通过 brew 安装node.js
brew install node
安装后检查`node -v`,需安装node@10或以上版本,若装了多个版本的node.js 需将旧版卸载掉或者使用nvm管理
3、使用淘宝的 npm 镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
4、CMake
brew install cmake
安装后检查`cmake --version`能正确输出版本
5、FFmpeg
brew install ffmpeg
安装后`brew info ffmpeg` 标红色❌的为缺失的依赖,依次用brew安装
6.tesseract依赖
brew install tesseract
安装后`brew info tesseract ` 标红色❌的为缺失的依赖,依次用brew安装
7、取消tesseract链接
brew unlink tesseract
8、Opencv4nodejs
确保cmake跟FFmpeg及依赖都安装完毕才能进行下一步
CFLAGS="-w" CXXFLAGS="-w" cnpm install -g opencv4nodejs
9、链接tesseract
brew link tesseract
10、安装Carthage
brew install carthage
若已安装过的需更新版本至`0.34.0`或以上
============================================================================================================
二、安装Appium
1、安装 Appium(版本不低于1.16.0)
cnpm install -g appium
2.安装 app-doctor
cnpm install -g appium-doctor
3、检查环境
appium-doctor或者appium-doctor --ios
注:
* 1、要求『necessary』的部分必须全部安装正确,
* 2、对于『optional』部分,opencv4nodejs、ffmpeg等可能出现识别不到的情况,
* 2.1 对于npm安装的依赖包,使用『 npm list -g --depth 0 』,检查下是否安装完成,
* 2.2 对于brew安装的应用,使用『brew list 应用名』,检查是否扫描到有安装路径,重点注意有『bin』路径的
* 2.3 以上检查都正确,麻烦在质量群或者UI自动化群上告知下
4、iOS重签
详细情况参考之前分享的IOS安装webdriveragent
* 进入`/usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent`
* 打开 **WebDriverAgent.xcodeproj** ,将除名字带有_tvOS外的所有Schema进行重签
* Schema选择 **WebDriverAgentRunner**,点编译
* 若编译失败,进入`/usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent`执行`carthage update`,在重新打开工程编译
>font color="RED">**iOS签名及证书不熟悉的麻烦先自学或咨询各自业务组开发**>/font>
* [iOS 最新证书制作流程、制作通用证书](https://www.jianshu.com/p/cebccba8bafc)
* [iOS打包签名,你真的懂吗?](https://mp.weixin.qq.com/s/zCaHftxdoM-R9L_0oO2ahw)
* [XCUITest设置iOS真机设置](https://github.com/appium/appium-xcuitest-driver/blob/master/docs/real-device-config.md)
5、Instruments模板
wget -P ~/Library/Application\ Support/Instruments/Templates/ http://cdn101.lizhi.fm/web_res/common/20191203/LzPerformance.tracetemplate
若执行失败,执行`brew reinstall wget`后再重试
6、安装Libimobiledevice 先执行`idevice_id -l`若能正常获取连接到Mac的iOS设备则跳过这步,若报错则执行以下命令
brew install --HEAD libimobiledevice
7、安装ios-deploy
npm install -g ios-deploy
三、其他
1、JDK & MAVEN
* JAVA1.8以上
2、XCode
3.IntelliJ IDEA
* 安装 [Lombok](https://plugins.jetbrains.com/plugin/6317-lombok) 插件