标签:文件夹 使用 表达式 androidui app each ssi 起点 分辨率
Airtest是网易开发的手机UI界面自动化测试工具
通过截图功能操作手机虽然方便,但是截图涉及到分辨率的问题,代码不能在不同的手机上通用。
可以用来开发手机App爬虫
使用先抓大再抓小的技巧,先把每一组结果的父节点抓下来,再到每个结果里面分别获取子节点
touch: 点击屏幕元素
swipe: 滑动屏幕
exists: 判断屏幕元素是否存在
text: 在输入框中输入文字
snashot: 截图
点自动录制,可以直接点之后完成代码的生成
poco(text="知乎").click()
poco(name="com.zhihu.android:id/input").set_text(‘古剑奇谭三‘)
poco(name=‘com.zhihu.android:id/magi_title‘, text=‘古剑奇谭(电视剧)‘).click()
poco(name=‘com.zhihu.android:id/magi_title‘)[1].click()
poco(name=‘com.zhihu.android:id/magi_title‘, textMatches=‘^古剑奇谭三.*$‘).click() #正则表达式
常见的基本上不会变化的属性包含但不限于:name type resourceId package
poco.swipe([0.5, 0.8], [0.5, 0.2])# poco.swipe(起点坐标,终点左边) 屏幕左上角为(0, 0),屏幕右下角为(1, 1)
使用child只会在子节点中搜索需要的内容,而使用offspring会像文件夹递归一样把里面的所有节点都遍历一次,直到找到符合条件的属性为止。
adb devices -l
from airtest.core.api import auto_setup
from airtest.core.android import Android
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
auto_setup(__file__)
device_1 = Android(‘76efadf3a7ce4‘) #最左边的编号就是手机串号
device_2 = Android(‘adfasdfasf23‘)
device_3 = Android(‘adifu39ernla‘)
poco_1 = AndroidUiautomationPoco(device_1, use_airtest_input=True, screenshot_each_action=False)
poco_2 = AndroidUiautomationPoco(device_2, use_airtest_input=True, screenshot_each_action=False)
poco_3 = AndroidUiautomationPoco(device_3, use_airtest_input=True, screenshot_each_action=False)
airtest run untitled.air --device Android:///手机设备号 --log log/
python -m airtest run untitled.air --device Android:///手机设备号 --log log/
Android://127.0.0.1:5037/79d03fa?cap_method=JAVACAP&&ori_method=ADBORI&&touch_method=ADBTOUCH
a = connect_device("Android:///")
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco()
poco(‘android:id/title‘).click()
标签:文件夹 使用 表达式 androidui app each ssi 起点 分辨率
原文地址:https://www.cnblogs.com/hwllovelq/p/11762215.html