AirtestIDE详解(跨平台的UI自动化编辑器)
Airtest 是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具。
AirtestIDE 是一个跨平台、多端(Windows、web、android、ios、游戏)的UI自动化测试编辑器,支持自动化脚本录制、一键回放、报告查看。
- Game:通过图像识别和UI层次结构,支持所有游戏引擎和应用程序,使用方便。
- Android:通过访问Android原生应用程序,可以发挥重要作用,即插即用。
- IOS:通过poco可以访问iOS原生元素并找出它们的位置和属性,这使得iOS测试过程变得简单方便。
- Windows:支持Windows应用程序,可以编写代码并在平台上运行它。
- Web:基于Chrome Devtools协议,记录并生成selenium脚本,准确访问Web元素。
一、AirtestIDE 安装:

打开官网:http://airtest.netease.com/,点击下载,解压打开,找到AirtestIDE.exe文件,双击打开即可(包含了所有组件)。
二、AirtestIDE 界面:

0)主菜单:

- 文件:脚本新建、打开、保存、另存为(对应下面前4个按钮)
- 运行:脚本运行、停止、报告(对应下面后3个按钮)
- 设备:支持多脚本运行(不常用)
- HeadSpin:合作伙伴介绍(可忽略)
- 选项:设置、语言、皮肤
- 窗口:1~6 窗口打开/关闭
- 帮助:官方文档(http://airtest.netease.com/docs/cn/index.html)、主页(http://airtest.netease.com/)、GitHub(https://github.com/AirtestProject)、问题反馈
1)Airtest辅助窗:

① 截图:用于脚本图片识别(对应右上角第1个按钮)
② 录制:自动化脚本录制,可以为我们省去很大一部分脚本编写工作(对应右上角第2个按钮)
③ 操作:

④ 辅助:

⑤ 断言:

更多详解:http://airtest.netease.com/docs/cn/5_airtest_framework/airtest_all_module/airtest.core.api.html
2)脚本编辑器:

文件格式默认是.air脚本,自动导入airtest.core所有api方法;如果你Python基础比较好,也可以直接写纯.py脚本。
3)设备窗:

① 面板切换:可以切换连接面板和Windows屏(对应右上角第1个按钮)
② 设置:可以显示辅助弹窗和断开当前设备(对应右上角第2个按钮)
③ 移动设备连接:

④ Windows窗口连接:

⑤ IOS设备连接:

4)Poco辅助窗:

针对你的测试对象选择对应架构,可以显示对象UI渲染树。
5)日志查看窗:

执行日志(常用五个等级),默认是debug模式,会显示很多信息。如果你不做脚本调试,可以调整为Info模式,这样每步执行只会打印一行,相对会清晰很多。
6)Selenium窗(默认不打开):

Airtest-Selenium是对selenium的python库做的一层封装:
- 添加了部分图像识别的接口;
- 多标签页的切换接口也进行了对应api封装;
- 核心api运行时会自动进行log记录,可以生成网页版测试报告。
详解参考:http://airtest.netease.com/docs/cn/8_plugins/2_selenium.html
三、常见问题:
如果使用过程中出现什么异常问题,可以参考:http://airtest.netease.com/docs/cn/9_faq.html#

四、特别说明:
iOS设备连接前置要求:
1. 需要有一台mac电脑
2. 需要iOS的开发者证书,付费或免费的均可
3. 需要了解xcode的基础操作和用法
—— 详情参考:http://airtest.netease.com/docs/cn/2_device_connection/4_ios_connection.html
----- 转载请注明原作,谢谢:https://www.cnblogs.com/leozhanggg/p/10971205.html
AirtestIDE详解(跨平台的UI自动化编辑器)的更多相关文章
- 详解Kubernetes微服务自动化发布系统
实施微服务架构后,原先单一的系统结构统变成了数量众多的微服务应用,开发.测试.运维部署等都会面临不少挑战.在微服务架构下如何提高工程研发效率,确保开发.测试.运维部署等流程上的顺畅,是微服务技术体系能 ...
- airtest自动化中的poco+python连接手机实现ui自动化
airtest:http://airtest.netease.com/docs/docs_AirtestIDE-zh_CN/index.html官网地址 AirtestIDE:跨平台的UI自动化测试编 ...
- 详解MathType中如何批量修改公式字体和大小
MathType应用在论文中时,有时会因为排版问题批量修改公式字体和大小,一个一个的修改不仅费时费力,还容易出现错误,本教程将详解如何在MathType公式编辑器中批量修改公式字体和大小. MathT ...
- async和await详解
async和await详解 1.非UI线程中执行 Test()函数带有async 和await ,返回值写成Task. 1 using System; 2 using System.Threadin ...
- 如何做ui自动化---步骤详解
第一步: 得到功能测试的常规用例,查看是否可以进行自动化,要明确,自动化不是为了自动化而自动化,自动化是节省人力,主要做回归测试,如果变动性特别大,不建议做自动化,具体可查看其它文章“什么适合做自动化 ...
- iOS开发——UI篇OC篇&SpriteKit详解
SpriteKit详解 SpriteKit,iOS/Mac游戏制作的新纪元 这是我的WWDC2013系列笔记中的一篇,完整的笔记列表请参看这篇总览.本文仅作为个人记录使用,也欢迎在许可协议范围内转载或 ...
- UI自动化测试(二)浏览器操作及对元素的定位方法(xpath定位和css定位详解)
Selenium下的Webdriver工具支持FireFox(geckodriver). IE(InternetExplorerDriver).Chrome(ChromeDriver). Opera( ...
- Appium+python自动化(三十)- 实现代码与数据分离 - 数据配置-yaml(超详解)
简介 本篇文章主要介绍了python中yaml配置文件模块的使用让其完成数据和代码的分离,宏哥觉得挺不错的,于是就义无反顾地分享给大家,也给大家做个参考.一起跟随宏哥过来看看吧. 思考问题 前面我们配 ...
- ANDROID L——Material Design详解(UI控件)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...
随机推荐
- TestNG多线程测试-注解方式实现
用@Test(invocationCount = x,threadPoolSize = y)声明,invocationCount表示执行次数,threadPoolSize表示线程池大小. packag ...
- Django加载静态文件失败,已解决
1.css文件以及js文件要放在static目录下,static和templates属于同级目录 2.在Django项目的同名项目文件的setting.py中,最后添加静态文件夹static目录路径 ...
- gnuplot examples
xy plot #set terminal jpeg #set output 'alfa.jpg' set terminal postscript eps font 24 set out 'U_vs_ ...
- Spring常用注解总结 hibernate注解
1.@Resource和@Autowired @Resource和@Autowired功能一样在容器查找匹配的Bean @Autowired默认按照byType方式进行bean匹配,@Resource ...
- Python学习笔记 (2)变量、常量和数据类型
变量 顾名思义,变量就是一个会变的量,用一个变量名表示,指向内存中一片区域,而指向的区域存的是什么,这个变量就是什么数据类型,和C/C++挺不一样的.变量数据类型可以通过赋值变来变去(这就叫动态语言, ...
- graylog 市场
https://marketplace.graylog.org/addons/246dc332-7da7-4016-b2f9-b00f722a8e79
- Nginx 重写规则指南
作者:运维生存时间 - 默北 链接:www.ttlsa.com/nginx/nginx-rewriting-rules-guide/ 当运维遇到要重写情况时,往往是要程序员把重写规则写好后,发给你,你 ...
- Oracle RAC load blance
首先声明 本文基本是阅读 大话RAC 后的笔记.OK, 进入正题. Oracle 10g RAC中采取两种方式提供负载均衡.第一种是connection blance.在用户连接的时候,根据随机算法把 ...
- mybatis中jdbcType的作用和是否必须
1. mybatis中 jdbcType 时间类型 当jdbcType = DATE 时, 只传入了 年月日 jdbcType = TIMESTAMP , 年月日+ 时分秒 2. jdbcType ...
- dota监測
执行环境:win7 32位. python版本号:3.4.1 因为用到了一些win32api,这些并不是python标准库自带的,所以你须要先去下载pywin32模块.去http://sourcefo ...