一、简介

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连接手机:

    1. 选择传输文件模式
    2. 打开开发者模式,并在开发者模式中打开USB调试、允许USB安装应用
    3. 在airtestIDE中点击刷新ADB => 点击connect

2. 新建脚本

auto_setup(__file__)

意思是将脚本文件作为脚本路径传入,其他参数内容将默认读取运行命令行传入的参数。

3. 常用模拟事件

  • touch :点击某个位置,可以设定被点击的位置、次数、按住时长等参数

结果:

  • 坐标点击 == > touch([693, 1867]) / touch([0.51, 0.595])
  • 设置坐标:

  1. 绝对坐标:仅勾选 实时坐标显示 选项,可以实时在手机屏幕画面上显 示出鼠标位置的绝对坐标。

  1. 相对坐标:在勾选了 实时坐标显示 的前提下,再勾选 相对坐标,将 会以(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

airtest IDE初级教程的更多相关文章

  1. Siki_Unity_1-6_C#编程初级教程(未学)

    Unity 1-6 C#编程初级教程 任务1:C#和.Net框架 C#是.Net里的一个成分 2002年微软发布第一个.Net框架(多平台,行业标准,安全性) .Net框架 IDE编程工具 --产生- ...

  2. Selenium IDE 基础教程

    Selenium IDE 基础教程 1.下载安装     a 在火狐浏览其中搜索附件组件,查找 Selenium IDE     b 下载安装,然后重启firefox 2.界面讲解      在菜单- ...

  3. Python图像处理库:Pillow 初级教程

    Python图像处理库:Pillow 初级教程 2014-09-14 翻译 http://pillow.readthedocs.org/en/latest/handbook/tutorial.html ...

  4. shellKali Linux Web 渗透测试— 初级教程(第三课)

    shellKali Linux Web 渗透测试— 初级教程(第三课) 文/玄魂 目录 shellKali Linux Web 渗透测试—初级教程(第三课) 课程目录 通过google hack寻找测 ...

  5. Mac OS X Terminal 101:终端使用初级教程

    Mac OS X Terminal 101:终端使用初级教程 发表于 2012 年 7 月 29 日 由 Renfei Song | 文章目录 1 为什么要使用命令行/如何开启命令行? 2 初识Com ...

  6. Coding 初级教程(二)——上传已有项目

    Coding 初级教程(二)——上传已有项目 [摘要:方针读者 :已具有 Coding.net 的账号. 本文首要先容若何把项目上传到 Coding.net 上. 分两种环境,一种是项目已归入到 gi ...

  7. [初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY

    [初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY 发布者:sqqdugdu 时间:10-06 阅读数:2117 测试环境:RHEL 6.1,SecureCRT 5 ...

  8. Window服务初级教程以及log4net配置文件初始化

    Window服务初级教程:http://www.jb51.net/article/48987.htm 另外,配置log4net这个日志功能的时候需要初始化,不然会报没有初始化的错误,而且初始化的节点应 ...

  9. 《自学C语言》初级教程 - 目录

    我现在打算出一个C语言学习教程,目的是为了让初学者能够很容易和更深刻地理解C语言. 你可能有这样的疑问,网上不是有很多的初级教程吗,我需要这个吗?我的回答是:网上的C语言教程讲得不够全面,而且许多的初 ...

  10. Android初级教程理论知识(第三章测试&数据存储&界面展现)

    首先介绍单元测试,我在javaweb部分有详细介绍单元测试框架的一篇文章. 可以先看在javaweb中的单元测试详解篇http://blog.csdn.net/qq_32059827/article/ ...

随机推荐

  1. 可持久化栈学习笔记 | 题解 P6182 [USACO10OPEN]Time Travel S

    简要题意 你需要维护一个栈,有 \(n\) 个操作,支持: 给定一个 \(x\),将 \(x\) 加入栈. 将一个元素出栈. 给定一个 \(x\),将当前栈回退到 第 \(x\) 操作前. 每一次操作 ...

  2. day01-Spring基本介绍

    Spring基本介绍 1.官方资料和下载 1.1Spring5下载 直接访问 https://repo.spring.io/ui/native/release/org/springframework/ ...

  3. 【MySQL】MySQL8安装

    1. MySQL8安装 安装环境 操作系统:CentOS7 MySQL版本:8.0.28 安装方式:二进制Generic 软件路径:/app/database 数据路径:/data/3306 日志路径 ...

  4. 腾讯出品小程序自动化测试框架【Minium】系列(三)元素定位详解

    写在前面 昨天转发这篇文章时,看到群里有朋友这样说: 这么卷吗?这个框架官方已经不维护了. 姑且不说卷不卷的问题,要是能卷明白,别说还真不错: 不维护又怎样?我想学习,想会,分享给很期待这系列的文章的 ...

  5. 定时调度插件------Longbow.Tasks

    官网地址Longbow.Tasks 使用说明 dll引用 使用NuGet 搜索Longbow.Task可找到相关版本的dll 目前最新的为7.0.0版本,需net6.0+ 如果低版本用户可使用5.2. ...

  6. drf入门规范、序列化器组件、视图组件、请求与响应

    DRF框架之入门规范 ​ 本篇文章会详细介绍web开发模式.API接口及其接口测试工具.restful规范.还有经常分不清又很重要的序列化与反序列化的部分,初级交接触APIView.Request类. ...

  7. 用户行为分析模型实践(三)——H5通用分析模型

    作者:vivo 互联网大数据团队- Zhao Wei.Tian Fengbiao.Li Xiong 本文从提升用户行为分析效率角度出发,详细介绍了H5埋点方案规划,埋点数据采集流程,提供可借鉴的用户行 ...

  8. 现代图片性能优化及体验优化指南 - 图片类型及 Picture 标签的使用

    图片资源,在我们的业务中可谓是占据了非常大头的一环,尤其是其对带宽的消耗是十分巨大的. 对图片的性能优化及体验优化在今天就显得尤为重要.本文,就将从各个方面阐述,在各种新特性满头飞的今天,我们可以如何 ...

  9. [​DuckDB] 多核算子并行的源码解析

    DuckDB 是近年来颇受关注的OLAP数据库,号称是OLAP领域的SQLite,以精巧简单,性能优异而著称.笔者前段时间在调研Doris的Pipeline的算子并行方案,而DuckDB基于论文< ...

  10. Vue31 消息订阅和发布

    1 简介 组件之间的通信除了使用事件总线之外,还可以使用一些插件来通过消息的订阅和发布来实现.pubsub-js就是一个不错的选择. 2 使用 2.1 安装 npm i pubsub-js # 或 y ...