Airtest Project:一款免费的自动化测试工具
Airtest Project简介
Airtest Project是网易出品的一款自动化解决方案,它适用于任意游戏引擎和应用的自动化测试。
Airtest Project支持Android、IOS和Windows平台。
Airtest 是一个自动化测试框架提供了利用图像识别技术,Airtest Project不需要依赖被测对象的源码。
Airtest Project是跨平台的API,它基本和所有Android移动应用程序和Windows游戏兼容。
在2018年3月26号的Google开发者日上,Google也宣布了这款由网易开发的项目,因此很值得一试。
Airtest Project提供了一个自动化测试编辑器Airtest IDE,Airtest IDE使用了基于图像识别的UI自动化测试框架—Airtest来进行控件定位;它同时集成了POCO框架。
POCO框架是基于控件识别的UI自动化框架,支持主流游戏引擎:Cocos2d-x, Unity3d,支持Android原生应用。因此可以选择是用图像识别或者基于控件定位的方式来进行控件定位。
AirtestIDE下载及安装AirtestIDE是一个跨平台的IDE,可在Windows(x64)和macOS上运行。
AirtestIDE是免安装版,直接去Airtest Project官网进行下载即可。
下载完成以后,双击可执行的文件AirtestIDE.exe即可使用。
Airtest Project官网:Airtest Project官网传送门
启动AirtestIDE,界面功能显示如下图所示(备注:本文演示平台为WINDOWS/Android):
我们来看看IDE窗口布局。在顶部,有一个菜单栏和快捷按钮,用于创建新项目,保存项目,运行脚本和检查报告输出。
左上方有Airtest窗口,窗口提供预封装的关键字,用于记录捕获的Airtest脚本(基于图像识别技术)。
左下角包含Poco窗口,可处理所选界面的UI元素,以及在树形结构表单中可以看到所选UI界面的位置。
中心区域包含脚本编辑部分,用于使用Airtest API在Python中开发自己的脚本。下面的日志输出部分在执行脚本时显示相应的日志内容。
在右侧,有一个实时的手机屏幕,支持使用鼠标事件来远程控制设备。
连接移动设备之前需要做什么?为了能够使用移动设备测试和调试移动应用和游戏,该设备需要处于开发人员模式并且 USB调试设置已打开。如果使用的操作系统是Windows操作系统,则可能还需要在系统上安装相应的设备驱动程序。
AirtestIDE连接移动设备 连接Android手机今天主要介绍下Android平台的操作
通过USB数据线将Android手机连接到PC上,单击refresh ADB按钮显示在设备列表中已连接的手机。
如果状态为“未授权”,请仔细检查是否已启用USB调试,并允许计算机在设备上执行USB调试。
点击connect就可以连接到设备并将设备投影到IDE里,如下所示:
如果设备已锁定,可以使用设备按钮直接解锁,也可以使用IDE开始操作设备。
- 例如,单击屏幕下方的电源按钮以唤醒设备并使用鼠标解锁设备。
AirtestIDE的使用成功连接手机后就可以使用AirtestIDE来进行脚本录制与回放功能。
录制方式分两种,一种基于图像识别的,另外一种基于控件定位的。
本文基于凸显识别的录制方式介绍两种:
一种是手动操作app,AirtestIDE自动化录制脚本回放;
一种是自己手动通过添加关键字进行图像识别的方式,一步步记录APP操作脚本录制回放;
测试app我就直接测试微信,进入我们的testclass微信公众号,点击文章,浏览文章为例,详细操作步骤如下所示:
1.点击微信,进入微信APP;
2.通过搜索菜单栏搜索testclass,进入我们的公众号;
3.点击公众号菜单,进入文章列表;
4.选择文章进入详情;
5.点击“阅读原文”,进入官网;
6.进入【关于作者】菜单;
自动录制脚本按照上面介绍的步骤连接上手机后,点击IDE里的File->New,命名文件testclass.air(默认生成.air的文件),创建一个脚本如下所示:
接着点击Airtest Assiant下的摄像机图像录制按钮(或者按快捷键F6)即可开始录制,如下所示:
点击右侧的设备屏幕区域,完成上面描述的1~6步骤,操作完再次点击录制按钮即可停止录制,录制完会自动生成脚本如下: