【自动化】Aritest+python实现客户端UI自动化

初步试水,写python脚本,已经实现了单机的自动化脚本case,目前阻碍“无法双机联调,验证通信”。

工作之余实践了2个月,遇到的问题随手记下来了,方便查阅。

前述:

Airtest:主要是用来获取页面上的元素信息的,在Airtest里调脚本也是可以的,但不够规范。

Pycharm:用来写脚本的工具,相对比较方便

流程:

一、安装AirTest:

1、下载地址:http://airtest.netease.com/download.html?download=AirtestIDE_2018-10-11_py3_Mac10-12.dmg

下载版本号:AirtestIDE_2018-10-11_py3_Mac10-12.dmg

2、 账号:GitHub账号/密码:XXXXX / XXXX(自己注册的测试账号)

3、直接下载adb工具包即可建立连接:platform-tools_r29.0.1-darwin.zip

4、官网学习地址:https://airtest.netease.com/docs/docs_AirtestIDE-zh_CN/1_quick_start/2_test_with_Android_device.html#id2

二、Airtest与android手机建立连接:

1、连上安卓手机

2、终端,确定adb devices是否能建立连接

3、点开目标APP,前端页面即为获取元素页面

4、试水Airtest上的touch()功能

5、简单demo

三、第一个demo遇到对问题:

1、如何与手机(安卓)建立联系

adb devices

打开开发者权限

2、获取app包名字:https://www.cnblogs.com/dzblog/p/4062288.html

adb shell pm list packsge

3、渲染树出不来?

选中Android的poco模式,或者重新启动下AirtestIDE

4、AirtestIDE提示Connection reset by peer?

因为导入的2个库Unity和Android,会识别最后一个库

5、如何执行一个airtest写的python脚本,链接上安卓手机那种?

进入当前脚本目录下:python3目录下安卓airtest,需要进入文件下:

cd /Library/Frameworks/Python.framework/Versions/3.7/bin

不是直接

cd /Library/Frameworks/Python.framework/Versions/3.7/bin/python3

6、实现上滑动

poco.swipe([0.5,0.9],[0.5,0.2],duration = 0.2)

7、 点击空白处:poco.click([0.5,0.5])

8、更换完time.sleep(2)后,每次跑同一个 case,结果都不一样?经常case被中断,提示:orientationWatcher has ended

脚本应该是没问题的,同样的脚本,同样的手机,在windows上使用airtest命令是没问题的。

经过排查,发现只要初始化了poco就会引发此问题,不使用poco,命令可以正常结束。

四、PyCharm使用遇到对问题

1、汉化PyCharm编辑器。

下载地址:https://github.com/pingfangx/jetbrains-in-chinese/tree/master/PyCharm

在Mac-应用程序中-显示包内容-替换lib/resources_zh_CN_PyCharm_2018.3_r1.jar

2、新建文件名是红色、绿色含义:

灰色:是已经同步的文件

红色:是本地存在但是没有同步到仓库的文件。当添加到仓库时,此文件名变绿

蓝色:表示文件有更改且未同步到仓库中。

3、pycharm导入代码,解决python的版本不对应的关系

解决参考链接:https://www.jianshu.com/p/a7aefc40d4d7

4、解决pycharm不支持airtest的代码?

pycharm中添加第三方包,主要是airtest,pocoui

参考文档:https://blog.csdn.net/u014028063/article/details/80423009

5、pycharm快捷键

缩紧和后退(左移)

代码选中:按住Tab键

shift+Tab

6、PyCharm破解链接:

https://blog.csdn.net/nobleman__/article/details/85730001

网址:http://idea.lanyus.com/

破解后报错链接:

https://blog.csdn.net/weixin_44443617/article/details/90048551