一:简介

什么是Airtest

网易的airtest其实是个测试套件,由Airtest框架、poco框架、airtestIDE 组成。

Airtest框架

基于图像识别的自动化测试框架,是网易自己团队开发的。这个框架核心不在实现方式和技术上,而是理念!这个框架的祖宗是MIT(麻省理工)研究院的成果 Sikuli ,他们构思了一种全新的UI测试模式,基于图像识别控件而不是具体内存里的控件对象。理论上除了绿屏外,应该都能很好的识别并测试。

poco框架

网易自家的跨平台UI测试框架,原理类似appium,其实鹅厂也搞了个类似Poco的框架,叫做GAutomator,但无论是Poco还是GAutomator,他们也有个共同的祖宗,那就是xiaocong大大的uiautomator for python,让用python调用uiautomator成为可能。

但是,xiaocong的uiautomator只能抓取原生android的控件树,抓不了其他游戏引擎的,所以Poco和GAutomator就多做了一件事情那就是给各个游戏引擎开发SDK,把控件树数据dump出来然后回传,这样我们才能够在他们的Inspector工具里看到游戏内的控件树。而这个所谓的SDK本质上就是一个TCPServer跑在游戏里。

所以poco框架是用于抓取UI控件的

airtestIDE

这个就是完全网易自己家的东西,不开源的。IDE整合了airtest和poco两大框架,内置了Python3.6.5,本地无需安装python环境就能 直接使用 。提供了 adb工具、poco-inspector(抓ui控件)、设备屏录、图形化的脚本编辑器、便捷的ui截图工具等等一系列东西。已经很强大了,大大的提高了工作效率。

总结

Airtest是网易出品的一款基于图像识别和poco控件识别的一款跨平台的UI自动化测试工具。适用于游戏和App(本质上就是网易自己为了给游戏做自动化测试开发出来的一套框架)。后期又渐渐支持Windows和Android平台,iOS平台。 Airtest提供了跨平台的API,包括安装应用、模拟输入、断言等。 基于图像识别技术定位UI元素, 测试脚本运行后可以自动生成详细的HTML测试报告,让你迅速定位失败的测试点。 AirtestIDE 是一个强大的GUI工具,可以帮助你录制和调试测试脚本。

airtest和appium的区别

airtest优缺点

优点

1.AirtestIDE操作比较简单,基本上不涉及到代码,所以非常适合刚入门没什么测试经验的人利用这个工具做UI自动化测试,同时Airetest又提供了开源的API,让资深测试工程师可以基于Airtest的框架上再做高级的定制化扩展功能

2.基于图像识别和UI控件识别功能简单

3.支持python进行个性化脚本编程

4.可录制脚本一键生成报告

缺点

1.如果经常使用图像识别 脚本会产生大量的图片,会让脚本整体观感不太好(个人意见)。

2.目前相关技术文档不多,需要自己去查看源代码分析或者去官网或社区探索。

二:安装

去官网http://airtest.netease.com/changelog.html下载最新安装包

下载到本地后解压缩 目录下别有中文,最好直接解压到D盘下

即可成功启动 启动成功后页面如下

Airtest安装与简介的更多相关文章

  1. InfluxDB学习之InfluxDB的安装和简介

    最近用到了 InfluxDB,在此记录下学习过程,同时也希望能够帮助到其他学习的同学. 本文主要介绍InfluxDB的功能特点以及influxDB的安装过程.更多InfluxDB详细教程请看:Infl ...

  2. 第二百九十一节,RabbitMQ多设备消息队列-安装与简介

    RabbitMQ多设备消息队列-安装与简介 RabbitMQ简介 解释RabbitMQ,就不得不提到AMQP(Advanced Message Queuing Protocol)协议. AMQP协议是 ...

  3. (转)阿里 RocketMQ 安装与简介

    原文:阿里 RocketMQ 安装与简介 一.简介 官方简介: l  RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: l  能够保证严格的消息顺序 l  提供丰富的消息拉取模式 l ...

  4. 尚硅谷Docker---docker安装及简介

    尚硅谷Docker---docker安装及简介 一.总结 一句话总结: docker就相当于是一个极微型的linux系统,独立 1.使用Docker的步骤? 1).安装Docker 2).去Docke ...

  5. 1.Cobaltstrike 安装与简介

    1.Cobaltstrike 安装与简介 一.简介 Cobalt Strike是一款美国Red Team开发的渗透测试神器,常被业界人内称为CS.自去年起, Cobaltstrike升级到3.0版本, ...

  6. Spark学习(一) -- Spark安装及简介

    标签(空格分隔): Spark 学习中的知识点:函数式编程.泛型编程.面向对象.并行编程. 任何工具的产生都会涉及这几个问题: 现实问题是什么? 理论模型的提出. 工程实现. 思考: 数据规模达到一台 ...

  7. 阿里 RocketMQ 安装与简介

    一.简介 官方简介: l  RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: l  能够保证严格的消息顺序 l  提供丰富的消息拉取模式 l  高效的订阅者水平扩展能力 l  实时的 ...

  8. flume1.5.2安装与简介

    关于flume的简介看参考:http://www.aboutyun.com/thread-7415-1-1.html 其实一张图就简单明了了 简单安装: 1.下载解压 ... 2.配置JDK,flum ...

  9. LR实战之Discuz开源论坛——安装及简介

    想了很久,也许是因为这段时间特别闲,从毕业到现在,我的测试职业生涯也近两年了,发现自己越来越喜欢测试领域,也越来越偏向测试开发了,作为一名专业的测试人员,不得不要学习性能测试,而使用LoadRunne ...

随机推荐

  1. Visual Studio 下error C2471: 无法更新程序数据库

    转载请注明来源:https://www.cnblogs.com/hookjc/ 解决方案:修改项目属性 右击项目 --> "属性" 1. "C/C++" ...

  2. Java基础复习(四)

    1.Integer与int的区别 int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Integer是java为int提供的封装类.int的默认值为0,而Integer的默 ...

  3. System 系统类

    import java.util.Arrays; import java.util.Properties; /* System 系统类 主要用于获取系统的属性数据. System类常用的方法: arr ...

  4. IOS scrollView 图片浏览

    // // ViewController.m // 0426 // // Created by apple on 15/4/26. // Copyright (c) 2015年 gense. All ...

  5. 从上下文中获取所有的原生controller

    1 /** 2 * 获取项目所有被注解修饰的url 3 * @param run 4 */ 5 public void getAllUrl(ConfigurableApplicationContext ...

  6. 聊聊DevOps制品管理-不止是存储制品这么简单

    什么是制品? 制品是指由源码编译打包生成的二进制文件,不同的开发语言对应着不同格式的二进制文件:这些二进制文件通常用于运行在服务器上或者作为编译依赖,"制品的管理"是配置管理的重要 ...

  7. c++ 文本处理

    c++ 文本处理 1.使用sstream版本 (1)功能:截取第一列为1以后的数据,如下图,截取第5行(包括第5行)以后的数据,前面4行数据丢弃. (2)代码:textProc.cc #include ...

  8. 深入MySQL(二):MySQL的数据类型

    前言 对于MySQL中的数据类型的选择,不同的数据类型看起来可能是相同的效果,但是其实很多时候天差地别. 本章从MySQL中的常用类型出发,结合类型选择的常见错误,贯彻MySQL的常用类型选择. 常用 ...

  9. ShaderLab实现Vignette过场动画效果

    实现Vignette过场动画效果 postprocessing中有渐晕效果(Vignette),镜头可以由边缘往中间慢慢变黑: 但是我打包WebGL的时候提示我postprocessing,GPU不支 ...

  10. maven私有仓库从搭建到使用

    因工作需要,需要搭建公司自己的私有仓库,存储自己的私有jar包,所以研究了下 一.环境准备 1.下载并安装nexus,然后启动项目,这部分攻略网上很多,而且基本上都是正确的,此处不做梳理 2.登录12 ...