Airtest其实是网易开源的自动化测试框架之一,整个AirtestProject包含了多个测试框架和工具。举个例子,selenium我们都非常熟悉了,它是一个web端的测试工具;而Airtest则是一个 跨平台 的测试工具,支持Android、iOS和Windows平台的自动化测试。

下面我们从几个方面来了解下这个AirtestProject:

【AirtestProject具体包含了哪些工具/产品】

AirtestProject包含了Airtest框架、Poco框架、airtest-selenium框架、AirtestIDE编辑器、DeviceFarm集群方案和Airlab云测平台。

其中Airtest、Poco和airtest-selenium框架都是在github上面开源了的测试框架;AirtestIDE为这几款框架专用的编辑器,没有开源,但是可以在官网(airtest.netease.com/)上 免费下载 使用,支持Windows、Mac和Ubuntu系统;DeviceFarm集群方案和Airlab云测平台则是面向企业的大型自动化测试解决方案,目前已经在网易内部和数十家外部企业落地应用了。

【这些工具/产品有什么特点,可以帮助我们做什么】

1.Airtest框架:是一个跨平台的、基于图像识别的UI自动化测试框架,适用于移动端的游戏和App自动化,也可以用于Windows端的应用自动化。它最大的优势就是所见即所得的截图脚本,新手上手难度和理解难度都大大地降低了:

但是因为这个框架是基于图像识别的,所以会存在1个识别概率的问题,也就是大家所说的,有些截图的识别效果不好,比如纯文字截图等。还有一个问题是脚本迭代问题,UI界面的迭代往往比较频繁,所以图像脚本的迭代成本也会相应增高。

2.Poco框架:是一款基于UI控件识别的自动化测试框架,天然支持移动端的原生APP测试,并且通过接入官方提供的poco-sdk,还可以支持移动端和Windows端的游戏应用的测试。与Airtest的图像识别不同,基于UI控件的识别是精准识别,并且因为控件一般是不会轻易改动的,所以Poco脚本的迭代成本非常低。

Airtest和Poco都是基于Python语法的,可以结合使用,可拓展性强。

3.airtest-selenium框架:是对selenium的python库做的一层封装,它添加了部分图像识别的接口,也可以生成网页版测试报告。

4.AirtestIDE:跨平台的UI自动化测试编辑器,内置了Airtest和Poco的相关插件功能,能够使用它能帮助我们一键录制、回放脚本,也支持一键生成测试报告,降低了同学们自己编写自动化脚本的门槛。

5.DeviceFarm集群方案:网易推出的自动化测试集群解决方案 ,它提供软硬件一体化集成的产品,可以帮助企业在内部搭建安全、稳定、高效的云真机平台。(官网:airlab.163.com/b2b

6.Airlab云测平台:是一个高效的自动化测试用例运行平台,适用于回归测试和设备兼容性测试等。它包含了用例管理、脚本管理、任务预约、任务调度、云端报告、管理后台 等一系列功能。

【Airtest项目的不足之处和后续的发展】

任何产品都不是万能的,AirtestProject也存在着一些不足之处:

1.Airtest的图像识别准确率还不够高,后续可以通过一些OCR识别或者AI识别方案来提高图像识别的效果;

2.Poco对H5页面或者混合开发的应用识别效果还不够好,后续可以兼容这块页面/混合应用的控件识别;

3.AirtestIDE对单个脚本的支持度比较友好,但是还不支持对整个测试项目的管理和展示,后续也可以考虑增加这块的内容

……

还有其他的可发展之处这里就不一一列举了,对AirtestProject感兴趣的小伙伴可以关注【网易Airtest】,后续我们会给大家持续输出项目相关的内容和教程,非常感谢~