airtest IDE初级教程
一、简介
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 |
airtest IDE初级教程的更多相关文章
- Siki_Unity_1-6_C#编程初级教程(未学)
Unity 1-6 C#编程初级教程 任务1:C#和.Net框架 C#是.Net里的一个成分 2002年微软发布第一个.Net框架(多平台,行业标准,安全性) .Net框架 IDE编程工具 --产生- ...
- Selenium IDE 基础教程
Selenium IDE 基础教程 1.下载安装 a 在火狐浏览其中搜索附件组件,查找 Selenium IDE b 下载安装,然后重启firefox 2.界面讲解 在菜单- ...
- Python图像处理库:Pillow 初级教程
Python图像处理库:Pillow 初级教程 2014-09-14 翻译 http://pillow.readthedocs.org/en/latest/handbook/tutorial.html ...
- shellKali Linux Web 渗透测试— 初级教程(第三课)
shellKali Linux Web 渗透测试— 初级教程(第三课) 文/玄魂 目录 shellKali Linux Web 渗透测试—初级教程(第三课) 课程目录 通过google hack寻找测 ...
- Mac OS X Terminal 101:终端使用初级教程
Mac OS X Terminal 101:终端使用初级教程 发表于 2012 年 7 月 29 日 由 Renfei Song | 文章目录 1 为什么要使用命令行/如何开启命令行? 2 初识Com ...
- Coding 初级教程(二)——上传已有项目
Coding 初级教程(二)——上传已有项目 [摘要:方针读者 :已具有 Coding.net 的账号. 本文首要先容若何把项目上传到 Coding.net 上. 分两种环境,一种是项目已归入到 gi ...
- [初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY
[初级教程]用SecureCRT+Xming轻松远程实现Linux的X DISPLAY 发布者:sqqdugdu 时间:10-06 阅读数:2117 测试环境:RHEL 6.1,SecureCRT 5 ...
- Window服务初级教程以及log4net配置文件初始化
Window服务初级教程:http://www.jb51.net/article/48987.htm 另外,配置log4net这个日志功能的时候需要初始化,不然会报没有初始化的错误,而且初始化的节点应 ...
- 《自学C语言》初级教程 - 目录
我现在打算出一个C语言学习教程,目的是为了让初学者能够很容易和更深刻地理解C语言. 你可能有这样的疑问,网上不是有很多的初级教程吗,我需要这个吗?我的回答是:网上的C语言教程讲得不够全面,而且许多的初 ...
- Android初级教程理论知识(第三章测试&数据存储&界面展现)
首先介绍单元测试,我在javaweb部分有详细介绍单元测试框架的一篇文章. 可以先看在javaweb中的单元测试详解篇http://blog.csdn.net/qq_32059827/article/ ...
随机推荐
- 微信小程序技巧-让特定组件首页始终展示修改编译条件即可,不用改json
- js节流防抖 减少服务器请求
- 默认方法:and-默认方法:or
默认方法:and 既然是条件判断,就会存在与.或.非三种常见的逻辑关系.其中将两个Predicate条件使用"与"逻辑连接起来实现"并且"的效果时,可以使用de ...
- Java 进阶P-7.2+P-7.3
控制反转 很长一段时间里,我对控制反转和依赖注入这两个概念很模糊,闭上眼睛想一想,总有一种眩晕的感觉.但为了成为一名优秀的 Java 工程师,我花了一周的时间,彻底把它们搞清楚了. 紧耦合 在我们编码 ...
- Unity跑在Awake之前的方法
Unity跑在Awake之前的方法 一.前言 相信大家和小黑一样,在写项目的时候遇到过以下这中情况: ____两个脚本的Awake中,都有获取信息的函数被调用.可是A脚本在B脚本获取到信息之后,才可以 ...
- 读Java8函数式编程笔记07_设计和架构的原则
1. SOLID原则 1.1. 开发良好面向对象程序的准则 1.2. Liskov substitution里氏替换 1.3. Interface segregation接口隔离 1.4. Singl ...
- 让 MSYS2 Bash 像 Git Bash 一样显示 Git 分支名称
Git for Windows 的 Bash 有一个很实用的功能,如果当前目录处于 Git 仓库中,那么命令行中会显示当前 Git 分支的名称(见下图). 然而原版的 MSYS2 Bash 没有这个功 ...
- 教你解决虚拟机用不了USB设备的苦恼。
如果你看见了上图的效果说明我们的苦恼是一样一样的. vm10 vm11 vm player都有这个问题!!!! 对不对?哈哈 . 在虚拟机右击设备点击连接(Connect) 然后听见你的电脑发出了硬 ...
- ChatGPT保姆级注册教程
ChatGPT保姆级注册教程 最近几天OpenAI发布的ChatGPT聊天机器人火出天际了,连着上了各个平台的热搜榜.这个聊天机器人最大的特点是模仿人类说话风格同时回答大量问题. 有人说ChatGPT ...
- 10月28日内容总结——ATM项目开发流程
目录 一.项目开发流程 1.项目需求分析: 2.项目架构设计: 3.项目分组开发: 4.项目提交测试: 5.项目交付上线: 二.项目需求分析 1.主题 2.项目核心 3.项目需求: 4.从需求中提炼出 ...