背景:
测试工作中一些针对安卓设备的压测脚本,调用了uiautomator2 库进行UI元素识别和操作。在执行脚本时,首先会对需要连接的安卓设备安装atx-agent,但是公司内网无法直接访问互联网,无法直接通过 python -m uiautomator2 init 命令通过网络给设备安装atx-agent。
可以通过使用一台可以联网的电脑,给安卓设备安装atx-agent,然后在电脑C盘用户目录下 会生成一个.uiautomator2的文件夹,把这个文件夹拷贝出来,复制到内网电脑C盘用户目录下,就可以实现内网离线环境给连接安卓设备安装atx-agent,就可以使用脚本调用 uiautomator2执行安卓UI自动化测试了。
.uiautomator2的作用:
这是基于uiautomator2 执行UI自动化测试时,需要在待测设备上安装ATX应用的安装包文件缓存数据,有这个文件夹在,内网电脑无法访问外网也能给DUT安装ATX软件
- 将压缩文件解压成文件夹.uiautomator2
- 打开电脑用户数据路径,window系统一般都在C盘 示例 C:\Users\zn-yt
- 将解压的.uiautomator2 文件夹整体拷贝到 用户数据路径下, 示例 C:\Users\zn-yt.uiautomator2
调用库
import uiautomator2 as u2
连接设备
dut = u2.connect()
定义应用名称
app_name = "com.xxx.settings"