Airtest介绍
官网:https://airtest.doc.io.netease.com/
语言:python
优势:支持多平台(web/windows/android/ios)
Airtest工具分成三部分:Airtest IDE,airtest库,poco库
Airtest元素识别
以Android Native APP举例说明
1. 元素属性定位(基础选择器)
poco("深圳")
poco(text="深圳市")
poco(text="深圳市", name="深圳市")
poco(textMatches="^深圳.*$")
2. 元素属性定位(相对选择器)
poco("android:id/title").sibling("android.view.ViewGroup").offspring("北京市")
3. 坐标
Airtest IDE可以展示屏幕坐标,绝对坐标及相对坐标。touch方法的输入为绝对坐标,相对坐标需要根据屏幕尺寸换算后得到绝对坐标才可以使用。但每一款手机的屏幕分辨率不同,因此采用相对坐标,兼容性更好。
通过元素属性、图片识别方法进行点击,原理也是通过技术方法获取到对应的元素所在的坐标,因此坐标点击是元素操作最原始的方法。
touch(380, 2200)
4. 图片识别
# 伪代码
touch({图片})
5. OCR算法识别
OCR算法会识别图片中的文字,并且返回文字在图片中的相对及绝对坐标,基于此可进行元素点击/断言等操作
可参考:
6. 小结
操作元素方法优劣排序:
- 元素属性
- OCR算法识别
- 图片识别
- 坐标点击
参考
https://poco.readthedocs.io/zh_CN/latest/source/README.html#working-with-poco-objects
https://airtest.doc.io.netease.com/tutorial/9_Improved_compatibility/