盆友们,没有想到吧。干货立马就来了。
iOS自动化测试环境搭建真是实力劝退。坑太多了。
iOS平台封闭、行业交流少、教程视频也少。
这篇文章把自己搭建环境的步骤和遇到的坑都分享出来给有需要的盆友们。
一、前置基础知识
开发者中心
官网地址:https://developer.apple.com/
- 提供开发文档和开发工具,提升iOS平台知识
- Team ID:登录开发者账号,后台获得Team ID,个人开发者$99可以申请。
- bundle ID:也可以叫APP ID,它是每一个ios应用的全球唯一标识,需要到member center->identifier->APP IDS去创建一个bundle id。
- 开发证书和发布证书:开发者使用开发证书,对外分发到app store或者使用ad-hoc模式分发使用发布证书。
Xcode
-
app store下载Xcode
-
模拟器:perference - componets 各种模拟器,需下载。
image
-
build
image
-
创建模拟器
image
二、环境搭建
安装appium
- 安装node
brew install node
- 安装appium
npm install -g appium
- 检查appium是否安装成功
appium &
替换brew源
官网:https://brew.sh/
brew在mac上是很好用的工具,建议安装。安装很简单,执行以下命令。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
已经安装了brew的直接执行下面命令,对brew源进行替换:
# 替换brew.git:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
# 替换homebrew-core.git:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
# 替换Homebrew Bottles源
# 对于bash用户
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
#对于zsh用户
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
其他一些工具包的安装
-
安装libimobiledevice:一个跨平台的软件协议库和工具来与iOS设备进行本地通信。
brew install libimobiledevice
-
安装ios-deploy:一个使用命令行安装ios app到连接的设备的工具。(设备ios9.3以上需安装ios-deploy)
npm install -g ios-deploy
或者brew install ios-deploy
-
安装ideviceinstaller:
brew install --HEAD ideviceinstaller
安装完成以上东西后,会生成idevice工具:
idevice_id -l 显示连接设备udid
-
安装appium-doctor:appium-doctor是一个用于验证appium安装环境的工具,可以诊断出Node/iOS/Android环境配置方面的常见问题。
npm install appium-doctor -g
安装appium-doctorappium-doctor --ios
指定--ios时只针对iOS环境配置进行检测 -
安装xcode命令行工具
xcode-select --install
-
安装gcc
brew install gcc
-
安装或者升级usbmuxd
# 升级usbmuxd
WebDriverAgent安装
WebDriverAgent是由Facebook开发的一套开源框架,用于端对端的UI测试,能同时支持模拟器和真机。
github地址:https://github.com/facebookarchive/WebDriverAgent
我们在安装appium时,/usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent
这个目录下是已经安装了WebDriverAgent的,可以直接使用。
-
进入webdriveragent目录下,执行命令:
./Scripts/bootstrap.sh
。使用
bash -x ./Scripts/bootstrap.sh
可以看到执行命令的细节,一定要记得执行这条,否则编译WebDriverAgent会报错。 -
连接上你的设备
-
使用xcode编译webdriveragent
3.1 在/appium-webdriveragent下
3.2 WebDriverAgentLibopen WebDriverAgent.xcodeproj
Xcode会自动打开新的项目image 3.3 WebDriverAgentRunner
image
3.4 xcode菜单栏->Product->Destination->你的设备
3.5 xcode菜单栏->Scheme->WebDriverAgentRunner
3.6 xcode菜单栏->Product->Test
image 3.8 控制台输出如下类似信息以及设备上成功安装上webdriveragent视为成功
image
安装app-inspector
app-inspector是一款UI元素查看器,以树形视图查看UI,并自动生成XPath,官网地址:https://macacajs.github.io/app-inspector/
-
安装macaca-cli
npm install macaca-cli -g
检查是否安装成功:
macaca doctor
-
安装app-inspector
npm install app-inspector -g
-
编译XCTestWD
3.1 打开XCTestWD.xcodeproj
- ounter(line
3.2 XCTestWDopen /usr/local/lib/node_modules/app-inspector/node_modules/xctestwd/XCTestWD/XCTestWD.xcodeproj
image 3.3 XCTestWDUITests
image
3.4 xcode菜单栏->Product->Test 3.5 安装XCTestWD在你的设备上视为成功
-
连接你的设备
-
启动app-inspector
app-inspector -u 你的设备的udid --verbose
如何获得udid?命令
idevice_id -l
启动成功会自动打开一个浏览器页。
image
网友评论