一、简介
AirtestIDE 是一款跨平台的 UI自动化测试编辑器 ,内置了Airtest和Poco的相关插件功能,能够使用它快速简单地编写 Airtest 和 Poco 代码。
1. Airtest框架:
Airtest 是一个跨平台的、 基于图像识别 的UI自动化测试框架,适用于游戏和App,支持平台有Windows、Android和iOS
2. Poco框架
Poco 是一款 基于UI控件识别 的自动化测试框架,目前支持Android原生、iOS原生、Unity3D、cocos2dx、UE4和Egret等平台,也可以在其他引擎中自行接入poco-sdk来使用。
二、常用操作
1. 连接手机
使用USB连接手机:
- 选择传输文件模式
- 打开开发者模式,并在开发者模式中打开USB调试、允许USB安装应用
- 在airtestIDE中点击刷新ADB => 点击connect
2. 新建脚本
auto_setup(__file__)
意思是将脚本文件作为脚本路径传入,其他参数内容将默认读取运行命令行传入的参数。
3. 常用模拟事件
- touch :点击某个位置,可以设定被点击的位置、次数、按住时长等参数
结果:
- 坐标点击 == > touch([693, 1867]) / touch([0.51, 0.595])
- 设置坐标:
- 绝对坐标:仅勾选 实时坐标显示 选项,可以实时在手机屏幕画面上显 示出鼠标位置的绝对坐标。
- 相对坐标:在勾选了 实时坐标显示 的前提下,再勾选 相对坐标,将 会以(0,0)到(1,1)为范围来显示相对坐标。
- 相对坐标可避免跨分辨率的操作点超出屏幕的问题。比如调试脚本的手机的绝对坐标可以为(1440,3200),但是换另一部手机绝对坐标最大只能是(600,800)就会出现问题。
- exists:判断图片是否存在
- text :调用输入法输入指定内容
前提:手机已安装并切换 Yosemite 输入法。一般情况下使用时会自动安装(开发者模式中设置允许adb安装)
- wait :等待某个指定的图片元素出现
@ timeout:等待图片出现,使用IDE截图时未加入这个参数,默认20秒。
- 更改等待时长(如40s):切换代码模式 => 加入 timeout = 40
- start_app(包名) 替换touch(应用图标),相对用截图脚本来启动应用,脚本会更加简洁,兼容性也会更好。
- stop_app(包名) 停止运行应用
start_app("com.funny.kyk")
= = > 在任意界面打开 “有趣生活”
查看包名:
- sleep: 强制等待
sleep(5) = = > 等待5秒
- snapshot :对当前画面截一张图
- swipe :从一个位置滑动到另外一个位置
- keyevent :输入某个按键响应,例如回车键、删除键
- ……
airtest接口文档
https://airtest.readthedocs.io/zh_CN/latest/all_module/airtest.core.api.html#airtest.core.api
三、Python常用语句
1. if 判断
if 条件1 :
条件1成立时执行的代码
elif 条件2:
条件2成立时执行的代码
.......
else:
以上条件都不成立时执行的代码
#elif 可存在多个,if 和 else只能存在一个
score = 72
if score >80 and score <=100:
print("A")
elif score >60 and score <= 80:
print("B")
else:
print("C")
2. while 循环
while 条件:
条件成立时执行的代码
i=1
sum=0
while i<=100:
sum+=i
i=i+1
print(sum)
3. for 循环(遍历)
for 临时变量 in 可迭代对象(列表,字符串,元组,字典) :
循环满足条件时执行的代码
for i in range(x, y, z): x 为起始位置,y 为结束位置, z 为步长,区间左闭右开
for i in range(1, 5, 2):
print(i) = = > 1 3