Mac下AirtestIDE之IOS自动化测试环境搭建

Mac下Airtest之IOS自动化测试环境搭建

原创: George555     公众号:测试江湖路  

如果这些内容对你有帮助,也可以打开微信扫一扫,加关注:

Mac下AirtestIDE之IOS自动化测试环境搭建_第1张图片

  最近在研究ios平台怎么做ui自动化更方便,后来发现网易出品的Airtest,用来做ios的自动化还挺方便,接下来总结下怎么搭建环境。

一、前提

  引用下官方说明:

  ###Airtest Project提供了一种新的思路,使用python作为脚本语言,基于可视化的方式进行自动化脚本编写。并使用了优化后的WebdriverAgent(iOS-Tagent)作为运行时设备控制的底层框架,其极大的优化了执行效率,使得iOS自动化测试达到了前所未有的简单和便捷。###

  因此要用Airtest来做IOS的自动化测试,首先得在Mac电脑的Xcode上搭建好IOS-Targent,然后才能在AirtestIDE的IOS板块中用ip+端口连接访问IOS的设备(当然这时候你也可以在windows的系统上来访问编写自动化脚本)。

  本文只记录了基于Airtest怎么搭建IOS自动化测试环境,需要了解Airtest之IOS自动化测试的请持续关注本公众号更新。

二、需要准备的软件环境:

  1.Mac系统版本:MacOS High Sierra V10.13.6

  2.下载xcode,版本:V10.1

  3.下载iOS-Tagent-master,版本:github下载最新

  4.下载airtestIDE,版本:AirtestIDE_2018-11-06_py3_Mac10-12

三、环境配置:

  1.Xcode上ios-tagent的配置:

  A.导入IOS-tagent:

  打开xcode导入(File-open)本地下载的ios-tagent框架:需要找到ios-tagent目录下的WebDriverAgent.xcodeproj

Mac下AirtestIDE之IOS自动化测试环境搭建_第2张图片

 

  B.配置General项:

  选择Automatically manage signing,则可以自动识别证书(个人免费证书,可以在模拟器上调试)

Mac下AirtestIDE之IOS自动化测试环境搭建_第3张图片

 

  如果不使用个人免费证书,则可以导入应用对应开发者证书:

Mac下AirtestIDE之IOS自动化测试环境搭建_第4张图片

 

  C.配置Build Settings项:

  修改IOS Deployment Target:

Mac下AirtestIDE之IOS自动化测试环境搭建_第5张图片

 

  修改Product Bundle Identifier:  --随意修改包名就可以

Mac下AirtestIDE之IOS自动化测试环境搭建_第6张图片

 

  D.选择远行环境:

  选择运行项目:在xcode工具栏-Product-Scheme-WebDriverAgentRunner,选中此运行环境

Mac下AirtestIDE之IOS自动化测试环境搭建_第7张图片

 

  选择模拟器:在xcode工具栏-Product-Destination-选择需要运行的模拟器:

  注意:a.此时根据实际项目需要选择远行的ios版本的模拟器,或者进入底部的Add Additional Simulators界面,安装需要的模拟器环境;b.如果是想连接真机测试,手机usb接入电脑后,此处列表会有选择真机的设备。

Mac下AirtestIDE之IOS自动化测试环境搭建_第8张图片

 

  下图为选择模拟器的界面:---如果列表中没有所需模拟器,可以点左下角的+来添加所需对应ios版本的模拟器:

Mac下AirtestIDE之IOS自动化测试环境搭建_第9张图片

 

  E.好了,大功告成,可以开始运行了,在工具栏Product中点Test,当看到如下界面时,说明server端已经运行成功了:

Mac下AirtestIDE之IOS自动化测试环境搭建_第10张图片

    接下来在airtestIDE中连接下吧,在ios APP connect输入上图日志里这个http://192.168.0.109:8100  来连接你的ios设备吧(当然此处也可以在windows下的airtestIDE界面连接ios设备,前提是保证windows和mac是同一个局域网)

Mac下AirtestIDE之IOS自动化测试环境搭建_第11张图片

 

    四、远程连接ios设备

    上面说了连接模拟器来做ios自动化,用usb连接真机测试同模拟器类似,那如果想连接wifi网络下的ios设备呢?

    一般情况下,需要通过USB连接的方式访问手机上的代理,而直接通过wifi对手机进行访问可能会出现问题,这里官方有提供一种方法:使用iproxy方式连接,执行命令:

    $ brew install libimobiledevice    $ iproxy 8100 8100

    要使用brew命令则必须先在mac的终端安装Homebrew,见下图:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)

Mac下AirtestIDE之IOS自动化测试环境搭建_第12张图片

Mac下AirtestIDE之IOS自动化测试环境搭建_第13张图片

    出现上面的提示表示Homebrew安装成功,可以用brew命令安装libimobiledevice了。

Mac下AirtestIDE之IOS自动化测试环境搭建_第14张图片

    安装成功后,执行完iproxy 8100 8100,就可以在mac电脑的浏览器中使用http://127.0.0.1:8100/status来查看到一些JSON格式的手机信息,即表示启动成功。如下图:

Mac下AirtestIDE之IOS自动化测试环境搭建_第15张图片

    接下来就可以在Mac电脑AirtestIDE中使用http://127.0.0.1:8100/ 来连接IOS设备了

    特殊说明:如果你想在局域网其他电脑(比如另一台windows电脑)通过这个ip+端口来连接ios设备怎么办? 这个好办,使用网络ip就可以,查询搭建IOS-target的mac电脑ip,然后使用此ip:8100端口就可以在windows电脑上查询到上图的手机信息了,这样就实现了在windows电脑远程连接ios设备的场景。(~~~是不是很easy呢),这里再帖张windows下访问的图:

Mac下AirtestIDE之IOS自动化测试环境搭建_第16张图片

Mac下AirtestIDE之IOS自动化测试环境搭建_第17张图片

    经过这一系列的辛苦,环境终于整好了,开始撸代码吧,后面继续总结分享。

    

 

    #####接下来总结下过程中可能遇到的问题#####:

    【问题1】:在工具栏-product-test执行后,界面提示:could not launch “WebDriverAgentRunner”

Mac下AirtestIDE之IOS自动化测试环境搭建_第18张图片

    此问题是因为WDA在移动设备上安装了WebDriverAgent的包后,没有在系统设置中添加信任。

    解决办法:

    步骤1:在移动设备上进入设置-通用-描述文件与设备管理添加信任,如下图:

Mac下AirtestIDE之IOS自动化测试环境搭建_第19张图片

    步骤2:此处添加信任后,再次在xcode中点击Test即可。(如果发现还是Test Failed,可以卸载app后,重新开始步骤1)

    【问题2】大家在搭建环境时候经常会遇到无法连接ios设备

    这时候请注意官方提供的xcode和ios的支持版本: (20191112日之前支持版本如下)

iOS Xcode
10.x-12.x 10.x
≥ 9.3 ≥ 9.3

 

#####欢迎大家加群交流####

QQ群:832468437

微信群请先加群主微信,群主会拉各位小伙伴进群。

Mac下AirtestIDE之IOS自动化测试环境搭建_第20张图片

你可能感兴趣的:(Airtest)