首页 > 其他分享 >Airtest步骤详解

Airtest步骤详解

时间:2023-01-31 11:28:30浏览次数:42  
标签:截图 步骤 app 默认 详解 坐标 Airtest 页面 图片

录制脚本
  touch:点击事件,在设备窗中选中对应图标,或者填入点击的坐标   swipe:滑动事件,选中图标滑动或填入滑动前后的坐标位置   sleep:等待事件,填入等待时间(单位是秒)   text:输入文本内容   keyevent:按键输入 0
执行部分代码
  airtest支持执行部分代码 0
assert断言
  assert_exists 断言存在   assert_not_exists 断言不存在   示例:assert_exists(Template(r"tpl1673339095160.png", record_pos=(0.0, 0.839), resolution=(540, 960)), "底边栏存在")   assert_equal 断言相等   assert_not_equal 断言不相等   注:如果判断数字,注意对比的是不是string类型 0
  断言失败
    如果断言失败,代码行会报红,log里会抛出异常,程序中断执行,例如以下两种异常: 0 0
运行脚本
  方法:
    按键F5     运行--运行脚本     菜单栏中三角形符号
  停止运行
    SHIFT+F5     菜单栏中正方形符号     运行--停止运行
  查看运行报告
    Ctrl+L进行保存,再文件夹中找到html文件,选择浏览器查看     注:部分浏览器打开后页面是错的,换成chrome或者IE是显示正常的     airtest报告对每一个事件都有记录,并对操作时间都有截图记录 0
touch
0   touch(v, times=1, duration=0.01, right_ckick=False)   @param v: 图片或者坐标(x, y)   @param times: 点击次数,默认1次   @param duration: 按住时间,默认0.01秒   @param right_ckick: 右键点击(仅限windows模式)   如果不知道坐标,可以利用图片的返回return查看图片的中心坐标   如果右侧界面内找不到要点击的图片,会抛出如下异常: 0 wait 0   wait(v,timeout=TIMEOUT,interval=0.5,intervlfunc=func)   @v :图片   @timeout :等待匹配的时间间隔,默认为20s   @intervalfunc :匹配的图片未找到时,执行func函数   @interval :每次匹配的时间间隔,默认0.5秒(单位:秒)   @return :找到图片后返回图片中心坐标,没找到返回TargetNotFoundError   一般情况下,touch等事件的等待时间内足够页面加载完成,所以一般时候是不用wait方法的。   但如果查找页面元素的时间大于20s,就可以用到wait 0 0   wait也可以和touch等结合使用,这种情况下,虽然代码只有一行,实际执行却是两步。示例如下: 0 0
swipe
0   swipe(v1, v2=None, vector=None, duration=0.01)   @v1:截图或者坐标(x,y)   @v2:截图或者坐标(x,y) 从v1滑动到v2 (优先级高于vector)   @vector:[x,y]录制时自动生成,记录屏幕的滑动比例,向右为x正向,向下为y正向   @steps:滑动步数。默认5步。   @duration:滑动的持续时间。默认0.5s。   以下两种格式都可以: 0 0
exists
0   exists用于判断图片是否存在,存在返回中心点坐标,不存在则返回false 0 0
text
0   @text :要输入的文本   @enter :完成输入后默认执行 Enter 操作 ,默认是 True   @search :完成输入后强制执行search 操作,默认是 False 0 0
keyevent
0   @keyname:按键名 0 0
snapshot
  airtest生成报告时,会自动带上截图,同时我们也可以使用snapshot添加截图 0   @filename – 保存截图的文件名,默认保存路径为 ST.LOG_DIR中   @msg – 截图文件的简短描述,将会被显示在报告页面中   示例如下: 0 0
图片编辑器
  对截取的图片双击,可以打开图片编辑器 0
  Image Editor使用说明
  左侧截屏功能区:     1、Snapshot&Recognition:截屏+自动识别     2、Show Help:显示帮助     3、鼠标滚轮:截屏功能区的图片缩放     4、鼠标双击:截屏功能区的图片自适应位置重置     5、鼠杯右键:更多交互     图像识别时会使用本界面中用户调节的识别参数,状态栏显示识别可信度     如果识别可信度低于设定的识别阀值,截屏上将不显示操作位置点的标记   右侧截图参数:     (l)filename:修改文件名,按Enter确认修改     (2)threshold:识别阈值,花围[0,1]。识别可信度低于此阈值的结果将被舍弃     (3)rgb:True、False,是否开启彩色识别     (4)target_pos:范围1-9,对应九宫格键盘位置     位置”0”与位置”"5”效果一致,均在图像中央位置 0  
操作app
  在不知道app包名时,可以用adb指令查看app报名     adb shell pm list packages 0   查看当前app包名和activity     adb shell dompsys window | findstr mCurrentFocus 0   打开app:start_app     start_app("com.taptap")   关闭app:stop_app     stop_app("com.taptap") 0 0
python环境下命令行执行airtest脚本
  安装airtest库:pip install airtest   安装poco库:pip install pocoui   速度慢的话可以使用国内镜像源
  命令行参数
0   通过图中可知,命令格式为:   AirtestIDE runner 脚本.air --device android://127.0.0.1:5037/emulator-5554(手机设备) --log 指定日志路径   其中,AirtestIDE 是执行工具   runner 脚本 是需要运行的脚本   --devide 是设备类型、ip、名称   --log 是指定日志保存的路径
Poco
  Airtest是通过图像识别的方式找到想点击的位置进行操作的;   但在图像识别不够精准时,如游戏人物有动作时,可以使用基于UI控件搜索的方式,即Poco框架。   位置在界面左下角,默认选中stop,需要手动切换到对应平台 0   设备中会安装PocoService 0
  探索页面元素
  点击右下Poco Inspector按钮,探索页面元素 0
  锁定
  点击后锁定后,右侧页面进行操作时,页面不跳转。解锁后恢复正常 0

标签:截图,步骤,app,默认,详解,坐标,Airtest,页面,图片
From: https://www.cnblogs.com/qmm-1000/p/17078366.html

相关文章

  • private,protected,public,partial详解
    https://blog.csdn.net/weixin_34242509/article/details/93440590private,只有类内可直接访问,protected,类内和子类可直接访问,public,谁都能直接访问。继承类型意思是说把父......
  • 动态代理-基本实现步骤 动态代理-增强方法
    动态代理-基本实现步骤  动态代理,增强对象Lenove三个参数:1.类加载器:真实对象.getClass().getClassLoader()......
  • Airtest 介绍与设备连接
    Airtest 是一个跨平台的UI自动化测试编辑器,适用于游戏和App。自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程支持基于图像识别的Airtest框架,适用于所......
  • 18.3 SQL Server事务与锁详解之(事务篇)
    SQLServer事务与锁详解之(上篇)-事务目录SQLServer事务与锁详解之(上篇)-事务简介事务的基本知识事务ACID特性事务分类事务并发数据访问事务并发带来的一致性问题丢失更新......
  • tcp/ip详解之04 以太网和802.3封装
    1.以太网和802.3封装在TCP/IP世界中,以太网IP数据报的封装是在RFC894[Hornig1984]中定义的,IEEE802网络的IP数据报封装是在RFC1042[PostelandReynolds1988]中定义的。......
  • tcp/ip详解之03 ip首部
    1.ip首部4个字节的32bit值以下面的次序传输:首先是0~7bit,其次8~15bit,然后16~23bit,最后是24~31bit。这种传输次序称作bigendian字节序。由于TCP/IP首部中所有的二进制整......
  • JWT全面解读、详细使用步骤
    前言现在,JSONWebTokens(JWT)是非常流行的。尤其是Web开发领域。流行安全稳定易用支持JSON所有这些因素,令JWT 名声大振。JSONWebToken(JWT)是目前最流行......
  • SpringBoot整合ActiveMQ的详细步骤
    pom文件引入activemq依赖123456789101112131415161718192021222324<!--activeMq配置-->    <dependency>        <grou......
  • 戴维南定理的理论解释及求解步骤
    内容:对外电路来说,任何一个线性有源二端网络,均可以用一个理想电压源和一个电阻元件串联的有源支路来等效代替,其电压源US等于线性有源二端网络的开路电压UOC,电阻元件的阻值R0......
  • 【数据结构和算法】Trie树简介及应用详解
    作者:京东物流马瑞1什么是Trie树1.1Trie树的概念Trie树,即字典树,又称单词查找树或键树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以......