1、 要有与被测试苹果手机app相对应的开发者账号和开发者证书。
2、 (1).iOS设备系统必须是iOS9.3及以上
(2).macOS系统必须是10.11或10.12
(3).Xcode版本为Xcode8及以上,xcode一定要更新到最新版本,然后在xcode打开的情况下安装依赖库
(4).Appium版本为1.6及以上
3、 安装xcode,直接在app store 下载安装就可以了
4、 先安装appium desktop
下载地址是:https://github.com/appium/appium-desktop/releases
找里面对应系统版本的安装包来下载
直接点击安装即可,安装成功显示,里面的内容不用改直接启动。
5、 安装所需依赖库,包括:
(1)安装Homebrew
提示:安装成功,说明安装成功
(2)安装node
在终端输入命令:brew install node
检测是否安装成功:输入命令:node –v
输出版本号说明安装成功。
(3)安装:npm
在终端输入命令:brew install npm
检测是否安装成功:输入命令:npm
输出[email protected] /usr/local/lib/node_modules/npm版本号说明安装成功。
(4)安装libimobiledevice
(5)安装ideviceinstaller (与真机测试有关)
(6)安装carthage
安装 carthage容易出现以下错误
Error: An unexpected error occurred during the brew link
step The formula built, but is not symlinked into /usr/local Permission denied @ dir_s_mkdir - /usr/local/Frameworks Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks
原因是carthage已经安装,但是没有 link 到 brew,还有就是文件夹权限问题,在终端输入:
sudo mkdir /usr/local/Frameworks
sudo chown $(whoami):admin /usr/local/Frameworks
brew link carthage
(7)安装ios-deploy(真机测试需要)
(brew install ios-deploy)
这个会出现超时错误
Get /binary-mirror-config/latest from https://registry.npm.taobao.org error: ConnectionTimeoutError: Connect timeout for 5000ms, GET https://registry.npmjs.org/binary-mirror-config/latest -2
感觉就是淘宝的镜像源的问题,没有同步或者什么原因,解决方法如下:
//设置镜像源 npm config set registry https://registry.npm.taobao.org --global //配置镜像列表 npm config list //执行安装指令 npm install -g ios-deploy
这一步安装不成功可以跳过。
(8)终端安装appium
(npm install -g appium)
(9)终端安装appium –doctor
npm install -g appium-doctor
如果显示:
表示appium 安装成功。
(10)、安装python环境(如果已安装python,这步可省略)
(11) 安装 wd
(12) 安装 webpack
(13) 安装 appium-xcuitest-driver依赖
(14) 编译 WebDriverAgent(安装好appium之后,appium中有自带的WebDriverAgent)
在应用程序中右键Appium Desktop->Contents->Resources->app->node_modules->appium->node_modules->appium-xcuitest-driver->WebDriverAgent,
用终端打开此路径,然后执行
mkdir -p Resources/WdbDriverAgent.bundle
./Scripts/bootstrap.sh –d
然后用Xcode打开WebDriverAgent.xcodeproj,进行证书管理配置,确保没有红色叹号
如果出现了下图的错误,那么就修改app ID,直至红色叹号消失。
配置成功后,显示如下
然后在终端运行:(已经进入到WebDriverAgent的目录下运行)
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination ‘id=’ test
如果终端出现了下图这些log,说明设置成功
然后在浏览器输入下面这个网址,如果显示如下:
则表示WebDriverAgent安装及编译成功,
6、启动Appium Desktop,开始测试
(1).启动Appium Desktop,单击start。
(2).点击右上角的搜索icon,启动一个session。
session启动后出现如图所示的编辑页面。
(3).编辑需要的属性。可通过图中左边的+按钮添加,也可直接在右边的JSON编辑框中编辑。
在真机上测试,需要多指定udid、xcodeOrgId、xcodeSigningId三个属性。udid及设备id,通过idevice_id -l查看;xcodeOrgId即开发者账号id,可在xcode的账号管理中查看;xcodeSigningId赋值"iPhone Developer"即可。我已经在手机上装好了被测应用,若还未安装,需通过appName指定安装包路径。然后点击右下角Start Session。
(4).成功启动后,会出现这个编辑界面,可以开始自动化测试的步骤设置啦。
可以在通过appium-desktop 定位元素
注意:
如果步骤3报错info XCUITest xcodebuild exited with code ‘65’ and signal ‘null’,那说明自动生成provisioning profile没有成功,需要手动配置一下WebDriverAgentRunner。
在应用程序中右键Appium Desktop->Contents->Resources->app->node_modules->appium->node_modules->appium-xcuitest-driver->WebDriverAgent,用终端打开此路径,然后执行
mkdir -p Resources/WdbDriverAgent.bundle
./Scripts/bootstrap.sh -d
然后打开WebDriverAgent.xcodeproj,进行证书管理配置,确保没有红色叹号
如果出现了下图的错误,那么就修改app ID,直至红色叹号消失。
配置成功后,显示如下
然后在终端运行xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination ‘id=’ test
如果终端出现了下图这些log,说明设置成功
然后再回到步骤3,删除掉xcodeOrgId、xcodeSigningId属性(亲测需要删除,不删除还是按自动生成provisioning profile的方式去启动了,不能成功),再次点击start session即可。