Appium 自动化测试 IOS 真机调试安装以及遇到的问题

IOS客户端尝试使用Appium框架进行自动化测试,该框架方便定制符合自身业务的测试用例,提高测试效率。在搭建测试环境时,发现真机调试安装中问题比较多,特整理以供其他遇到同样问题的同学参考。

先列出简单安装流程:

1.npm install -g appium

2.安装 carthage :brew install carthage

3.npm install -g ios-deploy

4.libimobiledevice:brew install libimobiledevice

5.gem install xcpretty


 WebDriverAgentRunner的处理:

 先使用mac打开终端

 1.  cd ~

 2.  下载WebDriverAgent 项目最新的代码:

      git clone https://github.com/facebook/WebDriverAgent

3.   执行 ./Scripts/bootstrap.sh

4.    cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver

5.    rm –rf WebDriverAgent 删除自带的WebDriverAgent

6.    ln –s ~/WebDriverAgent WebDriverAgent 将编译好的WebDriverAgent放入原来的路径下

7.    打开 WebDriverAgent 项目并按照教程修改, 运行 Product -> Test

(GitHub教程:https://github.com/appium/appium-xcuitest-driver/blob/master/docs/real-device-config.md)

8.   访问http://10.242.35.210(ip):8100,可以返回一个json。


Appium 自动化测试 IOS 真机调试安装以及遇到的问题_第1张图片

如果返回失败,可以测试使用下面的方法:

       1)转发端口,在终端输入 iproxy 8100 8100 , 窗口不要关闭或者终止运行

       2)访问 http://localhost:8100/status 有内容显示

成功之后启动appium ,start inspector session,startSession。写入如下:

9.可以运行写好的测试脚本

Appium 自动化测试 IOS 真机调试安装以及遇到的问题_第2张图片

遇到其他问题:

1.需要使用收费的开发者帐户编译WebDriverAgentRunner,其中的bundle identifier自定义可唯一标识就行(地址:https://developer.apple.com/account/)

2.证书冲突,将BuildSettings里的code singing identity设置成iPhone Develpoer,解决


Appium 自动化测试 IOS 真机调试安装以及遇到的问题_第3张图片

3.编译时发现ServerURLHere->http://10.242.35.210:0,端口号为0

Log如下:

background with task ID 1

Test Suite 'All tests' started at 2018-07-03 14:02:32.203

Test Suite 'WebDriverAgentRunner.xctest' started at 2018-07-03 14:02:32.206

Test Suite 'UITestingUITests' started at 2018-07-03 14:02:32.208

Test Case '-[UITestingUITests testRunner]' started.

    t =     0.01s Start Test at 2018-07-03 14:02:32.214

    t =     0.01s Set Up

2018-07-03 14:02:32.279721+0800 WebDriverAgentRunner-Runner[3133:267743] Built at Jul  3 2018 13:59:19

2018-07-03 14:02:32.399746+0800 WebDriverAgentRunner-Runner[3133:267743] ServerURLHere->http://10.242.35.210:0<-ServerURLHere

解决方法有两种:

1)端口参数指定,增加USE_PORT=8100

xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination ‘id=udid’ USE_PORT=8100 test

2) 如果还是无法解决,Xcode打开WebDriverAgentLib-Routing-FBWebServer.m下的端口


Appium 自动化测试 IOS 真机调试安装以及遇到的问题_第4张图片

4.xcodebuild failed with code 65

command: Error: Unable to launch WebDriverAgent because of xcodebuild failure: "xcodebuild failed with code 65". Make sure you follow the tutorial athttps://github.com/appium/appium-xcuitest-driver/blob/master/docs/real-device-config.md. Try to remove the WebDriverAgentRunner application from the device if it is installed and reboot the device.

解决方法:Desired Capabilities中加入xcodeOrgId,也就是teamid。需要填写

xcodeOrgId——-teamid,可以让开发查看,或者登录https://developer.apple.com/account,membership中的TeamID


Appium 自动化测试 IOS 真机调试安装以及遇到的问题_第5张图片

到此,真机的测试环境已经跑通,有什么写的不对的地方欢迎大家指正。

转载请记得标明原出处。

你可能感兴趣的:(Appium 自动化测试 IOS 真机调试安装以及遇到的问题)