草帽路飞UU 发表于 2022-9-26 16:39:16

一文教你如何使用uiautomator2工具!

本帖最后由 草帽路飞UU 于 2022-9-26 16:41 编辑

Google官方提供了一个Android自动化测试工具(Java库),基于 Accessibility 服务,功能很强,可以对第三方 App进行测试,获取屏幕上任意一个 App 的任意一个控件属性,并对其进行任意操作,但有

两个缺点:

  1.测试脚本只能使用 Java 语言;

  2.测试脚本要打包成 jar 或者 apk 包上传到设备上才能运行。

  实际工作中,我们希望测试逻辑能够用Python编写,能够在电脑上运行的时候就控制手机。所以基于这个目的开发了 python-uiautomator2自动化测试开源工具,其封装了谷歌自带的

uiautomator2测试框架,可以运行在支持 Python 的任一系统上,目前版本为 V2.10.2。

  python-uiautomator2 主要分为两个部分,python 客户端,移动设备。

  python 端: 运行脚本,并向移动设备发送 HTTP 请求;

  移动设备:移动设备上运行了封装了 uiautomator2 的 HTTP 服务,解析收到的请求,并转化成 uiautomator2 的代码。

  整个过程:

  ·在移动设备上安装 atx-agent(守护进程),随后 atx-agent 启动 uiautomator2 服务(默认 7912 端口)进行监听;

  · 在 PC 上编写测试脚本并执行(相当于发送 HTTP 请求到移动设备的 server端);

  · 移动设备通过 WIFI 或 USB 接收到 PC 上发来的 HTTP 请求,执行制定的操作。

使用 pip 安装安装完成后,使用如下 python 代码查看环境是事配置成功说明:后文中所有代码都需要导入 uiautomator2 库,为了简化我使用 u2 代替,d 代表 driver能正确打印出设备的信息则表示安

装成功。

注意:需要安装 adb 工具,并配置到系统环境变量,才能操作手机。安装有问题可以到 issue 列表查询:weditor 是一款基于浏览器的 UI 查看器,用来帮助我们查看 UI 元素定位。

因为 uiautomator 是独占资源,所以当 atx 运行的时候 uiautomatorviewer 是不能用的,为了减少 atx 频繁的启停,就需要用到此工具使用 pip 安装查看安装是否成功出现如下信息表示安装成功运行

weditorui2 支持 android 中 UiSelector 类中的所有定位方式,详细可以在这个网址查看https://developer.android.com/re ... utomator/UiSelector整体内容如下 , 所有

的属性可以通过 weditor 查看到。



页: [1]
查看完整版本: 一文教你如何使用uiautomator2工具!