1、简介
uiautomator2是一个自动化测试开源工具,仅支持Android平台的原生应用测试。它本来是Google提供的一个自动化测试的Java库,后来发展了python-uiautomator2,封装了谷歌自带的uiautomator测试框架,提供便利的python接口,用它可以很便捷的编写python脚本来实现app的自动化测试。
- python端:运行脚本,往移动端发送HTTP请求
- 移动端:安装atx-agent,然后atx-agent启动uiautomator2服务进行监听,并识别python脚本,转换为uiautomator2的代码。
移动设备通过WIFI(同一网段)或USB接收到PC上发来的HTTP请求,执行制定的操作
2、前提环境
-
Python
-
Android SDK
-
uiautomator2:
image.pngpip install -i https://pypi.tuna.tsinghua.edu.cn/simple --pre -U uiautomator2
-
设备上安装atx-agent:
image.pngpython -m uiautomator2 init
3、uiautomator2连接移动设备的三种方法
参考:https://www.cnblogs.com/qingchengzi/articles/14642737.html
import uiautomator2 as u2
# U2控制移动设备
# 第1种通过手机WIFI来进行连接,参数为手机WIFI的IP地址(u2版本2.15.0几乎没有成功过)
d = u2.connect_wifi("192.168.x.x")
print(d.info)
# 第2种连接手机的USB进行连接(安卓模拟器和真机都可以)必须开启USB调试模式
# CSQBL5000123456为手机序列号,`adb devices`查看
d = u2.connect_usb("CSQBL5000123456")
print(d.info)
# 第3种 adb tcpip模式
# 开启了tcpip连接:adb tcpip 5555
d = u2.connect_adb_wifi("192.168.3.123:5555")
print(d.info)
print(d.device_info) # 输出详细信息
连接成功示例:
4、weditor(非常好用的元素定位工具)
安装:pip install -i https://pypi.douban.com/simple weditor
执行:
python -m weditor
会在浏览器打开一个网页:
- USB连接时:输入序列号即可
- WIFI连接时:输入机器ip即可,(需与电脑在同一局域网)
image.png
后面就可以编写Python代码了
网友评论