Airtest自动化测试工具

摘要:
一开始,我知道Airtest可能是在年初。当时,我看了官方文件。这可能是一种类似于Sikuli的工具。它主要用于游戏自动化。它被用来通过截图解决游戏自动化测试的问题。官方网站http://airtest.netease.com/###AirtestIDE这是Airtest测试工具的标准IDE,旨在帮助我们记录/编写自动化测试。˃Adbdevices设备列表附件模拟器-5554设备当我在Android模拟器中操作时,AirtestIDE右侧的界面是同步的,这比许多移动测试工具要好。例如,appiumstop必须手动刷新才能获得最新的界面。

一开始知道Airtest大概是在年初的时候,当时,看了一下官方的文档,大概是类似Sikuli的一个工具,主要用来做游戏自动化的,通过截图的方式用来解决游戏自动化测试的难题。最近,移动端测试的同事尝试用它的poco库来做自动化,看样子还不错,所以,这里推荐给各位同学。

官方网站
http://airtest.netease.com/


### Airtest IDE

这是Airtest测试工具标配的IDE,目的是方便我们用于录制/编写自动化测试。

Airtest自动化测试工具第1张

你可以使用账号登录或直接点击左下角“skip”按钮跳过。

启动Android模拟器或者用PC连接一台手机。通过adb命令检查移动设备。

> adb devices
List of devices attached
emulator-5554   device

当我在Android模拟器中操作时,Airtest IDE右侧的界面是同步的,这一点比很多移动测试工具做的优秀,例如,appium desktop必须手动刷新才能获取最新的界面。

Airtest自动化测试工具第2张


#### Airtest

Airtest IDE支持Airtest脚本的录制,用法非常简单,你甚至可以先不用看它的API,通过录制来熟悉它的API。

Airtest自动化测试工具第3张

右侧Airtest窗口以及API,点击右上角录制按钮,然后,就可以在映射的Android模拟器界面上点点点了。

以下是我点点点,生成的脚本。

Airtest自动化测试工具第4张

过程非常简单,点击桌面上的计算器图标,打开编辑器输入1+1= ,然后,点击工具栏上的 “运行”按钮,就可以回放了。

这种脚本更适合游戏,因为游戏界面很难定位,图片识别(截图)的方式确实是不错的选择。


###Poco

Poco是另外一种形式的脚本,它与一般的自动化工具一样,通过元素本身的属性来定位元素,并且它同样支持录制。

Airtest自动化测试工具第5张

点击右上角第一个的录制按钮。然后,继续在android映射的界面上点点点。

因为脚本里面没截图,我就单独拿出来了。

__author__ = "fnngj"

from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

poco("计算器").click()
poco("com.android.calculator2:id/digit_1").click()
poco("com.android.calculator2:id/op_add").click()
poco("com.android.calculator2:id/digit_1").click()
poco("com.android.calculator2:id/eq").click()

从poco的API来看比appium更为简洁。

如果你要做的是非游戏的APP的话,poco应该是我们后面学习的重点。这样的代码不管是和单元测试框架结合还是使用PO设计模式都是没有问题的。

而且,同样提供元素的属性展示,又有录制功能加持,在开发效率上应该会提高不少。

Airtest自动化测试工具第6张

如果,你刚好又会Python,那么这将是一个不错的选择。

免责声明:文章转载自《Airtest自动化测试工具》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇实全软件产品自动升级管理解决方案HPE 交换机基础配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

网站安全检测 Web 安全测试工具

随着 Web 应用越来越广泛,Web 安全威胁日益凸显。黑客利用网站操作系统的漏洞和 Web 服务程序的 SQL 注入漏洞等得到Web服务器的控制权限,轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害。这也使得越来越多的用户关注应用层的安全问题,对 Web 应用安全的关注度也逐渐升温。下面向大家推荐8款非常有...

如何自己开发软件测试工具?

序言:一说到自动化测试工具,大家很多人都会想到的是QTP、LR或者selenium之类的工具,要大家一开始设计一个这样的工具,其实确实很有难度,因为其包含的功能细节太过庞大。当年的我,开始设计开发工具的过程中,走了很多弯路,例如:做工具的界面技术的历程,刚开始用tcl/tk脚本语言,用tcl写底层框架,用tk写图形界面,后来发现tk虽然构造图形方便,但可拓...

十大Web压力测试工具

下面是十个免费的可以用来进行Web的负载/压力测试的工具,这样,你就可以知道你的服务器以及你的WEB应用能够顶得住多少的并发量,以及你的网站的性能。 Grinder – Grinder是一个开源的JVM负载测试框架,它通过很多负载注射器来为分布式测试提供了便利。 支持用于执行测试脚本的Jython脚本引擎HTTP测试可通过HTTP代理进行管理。根据项目网...

APP的CPU,内存,耗电,流量测试工具

APP的CPU,内存,耗电,流量测试工具下载地址,后续文章会介绍如何使用Emmagee、itest、gt APP应用的CPU,内存,耗电,流量调查 可和同类产品比较,使用GT等工具;CPU靠system dump命令进行跟踪,内测靠DDMS的GC之后查看object   工具GT http://gt.qq.com/download.html 可下载最新的...

GCC高级测试功能扩展——程序性能测试工具gprof、程序覆盖测试工具gcov

gprof是GNU组织下的一个比较有用的性能测试功能:   主要功能:   找出应用程序中消耗CPU时间最多的函数;         产生程序运行时的函数调用关系、调用次数   基本原理:   首先用户要使用gprof工具,必须在GCC编译该文件的选项中添加-pg选项,然后GCC会在用户应用程序的每一个函数中加入一个名为mcount(或者是_mcount、...

腾讯自动化测试的AI智能

引子: 本文是林奕在腾讯 DevDays 2018 分享内容的脱敏整理,介绍了 CSIG 测试开发中心(前 SNG 测试开发中心)在自动化测试领域所做的智能化尝试。 大致分成下面几部分: 使用AI面对和解决的问题是什么 AI带来的曙光 使用了哪些技术,效果是怎么样的 未来展望 UI自动化测试的问题 从业务角度看自动化测试,看到的东西仅仅是冰山浮在水...