一、介绍
uiautomator2 是一个可以使用Python对Android设备进行UI自动化的库,仅支持Android平台的原生应用测试。。其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作。它提供便利的python接口。允许测试人员直接在PC上编写Python的测试代码,操作手机应用,完成自动化测试,大大提高自动化代码编写的效率。
原理解释:
python端:运行脚本,往移动端发送HTTP请求
移动端:安装atx-agent,然后atx-agent启动uiautomator2服务进行监听,并识别python脚本,转换为uiautomator2的代码。
移动设备通过WIFI(同一网段)或USB接收到PC上发来的HTTP请求,执行制定的操作
二、安装
安装 uiautomator2,
命令行窗口:pip install -U uiautomator2
设备安装atx-agent:
# init就是所有USB连接电脑的手机上都安装uiautomator2
python -m uiautomator2 init
三、安装weditor
在APP自动化测试是,需要使用到元素定位,UI元素定位的工具--WEditor,方便我们快速的识别手机上的元素,方便写代码。WEditor能够提供辅助编写脚本,定位元素,调试代码等功能,是基于python的一个查看APP元素的工具。
安装命令:pip install weditor==0.6.4
由于直接命令pip install weditor会报错,解决方法 太麻烦,所以直接降版本安装。
查看安装是否成功:weditor --help
使用:命令行窗口输入:python -m weditor ,默认启动后,会直接在本地打开一个网页,接下来的操作都可以只在这个网页完成。
四、操作及应用
1、链接手机
device = uiautomator2.connect() ,用的最多的是默认只有一台连接,或指定序列号链接。
import uiautomator2 as u2
#链接设备,这里是通过adb链接手机的;所以要提前装好adb;并能够adb devices发现该设备;
#用的最多的是默认的和指定序列号的,最方便
#不提供参数,默认连接方式,适用于只有一台设备
#device = u2.connect()
#有多台设备,指定设备ip,通过USB链接, 我的设备序列号是127.0.0.1
#device = u2.connect('127.0.0.1')
#通过wifi链接,设备IP要和PC在同一网络;在夜神模拟器,查到的序列号和ip同样
#device = u2.connect_wifi('127.0.0.1')
#打开被测试的app
device(text='浏览器').click()
注:用adb devices 查看当前pc链接的所有设备。
2、APP操作:安装、卸载、启动
这些操作都需要 用到app 的包名:device.app_current()
imp

本文介绍了如何使用uiautomator2库进行Android应用自动化测试,包括安装、设备连接、APP操作、元素定位、按键操作和智能等待,以及辅助工具WEditor的使用。重点讲解了WEditor在元素定位中的便捷作用。
最低0.47元/天 解锁文章
7080

被折叠的 条评论
为什么被折叠?



