uiautomator2:安装与使用

uiautomator2是基于python的一个自动化测试开源工具,它只支持Android平台的原生应用测试,

在工作中获知到它的存在,第一眼看上去,大家应该会和我一样觉得它和uiautomator有什么不一样,首先两者都是Google提供的用来做安卓自动化测试的

uiautomator2是python库,uiautomator是Java库

uiautomator测试脚本要打包成jar或者apk包上传到设备上才能运行,而uiautomator2能够用Python编写,能够在电脑上运行的时候就控制手机

uiautomator获取控件的速度更快一些,容易上手,对于新手很友好

从安装到可以使用步骤很简单:

前提准备

Android版本不低于 4.4

Python >= 3.6

pip也要注意版本,如果运行时提示版本过低,应升级版本后再进行后续操作

先准备一台开启了开发者选项的安卓手机,连接上电脑,确保执行adb devices可以看到连接上的设备。

1.安装 uiautomator2 模块

运行命令:pip install -U uiautomator2

运行命令:pip install pillow(安装屏幕截图数据非必安的)

2.手机安装uiautomator2 apk

命令运行:python -m uiautomator2 init(Github源) /(python -m uiautomator2 init –mirror这是国内的,比较快)

安装包含httprpc服务的apk到手机+atx-agent, minicap, minitouch(一个小黄车的icon)

3.验证脚本

命令行运行python打开python交互窗口。然后将下面的命令输入到窗口中。

import uiautomator2 as u2

d = u2.connect(IP=172.16.11.227) # connect to device  #特别注意的是:IP手机连接WIFI的IP地址,并不是ipconfig里的IP地址

print(d.info)  #这上面命令需要逐行敲回车进行

这时看到类似下面的输出,就可以正式开始用我们这个库了。因为这个库功能太多,后面还有很多的内容,需要慢慢去看 ....

{'currentPackageName': 'net.oneplus.launcher', 'displayHeight': 1920, 'displayRotation': 0, 'displaySizeDpX': 411, 'displaySizeDpY': 731, 'displayWidth': 1080, 'productName': 'OnePlus5', '

screenOn': True, 'sdkInt': 27, 'naturalOrientation': True}

4.安装weditor UI检验(UI Inspector)

命令运行:pip install -U weditor安装完成

5.启动weditor

命令运行:python3 -m weditor 会自动打开浏览器,输入设备的ip(手机连接wifi的网址IP)或者序列号(adb devices获取),点击Connect,大功告成,就可以看到模拟手机的界面

如果报错,可能是缺少某个设备组件没有安装,使用下面的命令重新初始化 python -m uiautomator2 init

利用uiautomator2可以定位到自己想要的元素供使用

你可能感兴趣的:(uiautomator2:安装与使用)