Airtest-UI,自动化集大成者

Airtest-UI,自动化集大成者

一、前言

Airtest是由网易研发的一款基于Python的、跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App。

该项目目前已在Github上面开源:

https://github.com/AirtestProject/Airtest

官网地址:

http://airtest.netease.com/

官方文档手册非常详细,建议大家入门可以先去看下相关的文档说明。

二、为什么需要Airtest

众所周知,UI层测试按照平台种类划分有Windows、Linux、Android、Web、小程序等。

针对于移动端Android & IOS平台,有最火的Appium测试框架

http://appium.io/

Web端有selenium测试框架

http://seleniumhq.org/

windows应用平台有AutoIT、Pywinauto

而业界针对游戏类的应用并没有比较好的解决方案,而Airtest测试框架应运而生,基于底层的Airtest和poco:

◆ Airtest:基于Python的、跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App。

◆ Poco:基于UI控件搜索的自动化测试框架,其核心优势是除了对Android、IOS之外,对游戏也是支持的,同时也支持微信小程序、微信小游戏和H5应用。

Airtest还非常贴心的配备了Airtest IDE,不需要写一行脚本,即可完成脚本的录制。

三、Airtest IDE录制

录制Android平台自动化脚本

step1 检测设备链接状态

本地安装的雷电模拟器

Airtest-UI,自动化集大成者

step2 Airtest IDE连接设备

Airtest-UI,自动化集大成者

Airtest-UI,自动化集大成者

可以看到Airtest可以直接将设备画面进行映射,同Appium的inspector或者UIAutomatorViewer.bat工具不一样

step3 录制脚本

点击录制即可开启录制功能,并且提供了很多不同的元素操作,如:点击、等待、滑动、断言等等

Airtest-UI,自动化集大成者

这里以柠檬班App为例,录制登录测试用例

Airtest-UI,自动化集大成者

录制回放

Airtest-UI,自动化集大成者

Airtest采取图像识别方式,这种方式比较适合游戏自动化 但是在脚本的兼容性方面存在一些问题(屏幕的分辨率、图标大小等)。

官方也给了几个小的技巧:

1、提升截图技巧-尽量截图完整图片

2、调整图像识别阈值

3、利用灰度图像识别

这些方式只能尽量优化,并不能根本上解决,所以官方最终建议是尽量使用poco:通过UI元素属性信息定位

四、POCO

Airtest提供另外一种更加稳健的元素操作方式-基于UI控件搜索框架poco

Airtest-UI,自动化集大成者

Airtest-UI,自动化集大成者

可以看到poco这种模式更加适合公司项目,如果你自己会Python,还可以在脚本的基础上继续拓展。

比如:应用PO设计模式,分层设计等等。

推荐一个软件测试学习交流群:785128166,群里有分享的视频,面试指导,测试资料,还有思维导图、群里有视频,都是干货的,你可以下载来看。主要分享测试基础、接口测试、性能测试、自动化测试、TestOps架构、Jmeter、LoadRunner、Fiddler、MySql、Linux、简历优化、面试技巧以及大型测试项目实战视频资料。合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

公众号:程序员二黑, 关注后免费领取海量学习资料。

好东西要和朋友一起分享哦
 
 

猜你喜欢

转载自blog.csdn.net/weixin_53519100/article/details/114645636
今日推荐