介绍几个APP自动化框架

当前比较流行和出名的APP自动化框架分别为 appium、uiautomator2、poco和airtest(后面两个都是网易团队开源,并且有独立IDE支持)

appium

appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web应用和混合应用。并且是跨平台跨语言,支持MacOS、Linux和Windows,也支持Java、Python、Ruby和PHP等。也是当前最流行最常用的自动化框架。
学习使用推荐虫师博客,简单入门可见此用例

工作原理:使用不同的语言编写脚本,通过Python(python-client )编写了一个appium自动化脚本并执行,请求会首先到 操作系统的appium-Server,appium-Server通过解析,驱动对应设备(模拟器、真机)来执行appium自动化脚本。

优点:跨平台,跨语言,有Selenium经验容易上手
缺点:不支持跨应用,配置环境麻烦,中文输入支持不佳,对控件获取较为麻烦(需要使用第三方工具)

uiautomator2

python-uiautomator2封装了谷歌自带的uiautomator2测试框架,提供便利的python接口。他允许测试人员直接在PC上编写Python的测试代码,操作手机应用,完成自动化,大大提高了自动化代码编写的效率。

如图所示,python-uiautomator2主要分为python客户端和移动设备。
python端: 运行脚本,并向移动设备发送HTTP请求
移动设备:移动设备需要封装uiautomator2的HTTP服务

  1. 在移动设备上安装atx-agent(守护进程), 随后atx-agent启动uiautomator2服务(默认7912端口)进行监听
  2. 在PC上编写测试脚本并执行(相当于发送HTTP请求到移动设备的server端)
  3. 移动设备通过WIFI或USB接收到PC上发来的HTTP请求,执行制定的操作

作者同时开发了weditor,支持在前端网页上对APP控件的获取与调试。本人博客之前有相关介绍使用。weditoruiautomator2配合使用即为方便。

框架开源作者介绍简单使用,uiautomator2开源地址及功能接口。

优点:易于安装使用,国人开源项目文档易读,配合weditor容易编写调试。
缺点:对IOS设备支持不佳,只能使用Python。

poco和 airtest

poco和airtest 是网易开放的自动化框架,适用于游戏和APP。
使用Python编写,支持Android、iOS、Windows、Unity、Cocos2dx、白鹭引擎、微信小程序等平台。

官方提供专用AirtestIDE工具: AirtestIDE是一个强大的GUI工具,可以帮助你录制和调试测试脚本。 AirtestIDE提供了完整的自动化工作流程支持:录制脚本->真机回放->生成报告。

也可以脱离IDE使用命令行或者Pycharm等进行执行

airtestIDE
其中airtest 主要使用图像识别,基于UI进行自动化操作。包括简单的截图、断言、拖动输入等。

poco 是基于APP控件进行自动化操作的。与上面的appium和uiautomator2类似。而且IDE支持对连接设备的控件获取和录制等。
具体见官方API和官网

测试报告展示:

优点:简单直接,跨平台,提供IDE并输出测试报告。airtest和poco混合使用提高效率。airtest对游戏等控件不易获取的场景较为适用。没有编程基础的也可以通过录制进行脚本的撰写。
缺点:只适用于Python。airtest图像识别存在错误几率。poco与其他基于控件的框架相比功能较少。

关于APP自动化测试框架相关推荐

  1. python app自动化测试框架_appium+python,app自动化测试框架

    基于appium的app自动化测试框架 基于appium框架的app自动化测试 App自动化测试主要难点在于环境的搭建,appium完全是基于selenium进行的扩展,所以app测试框架也是基于we ...

  2. APP自动化测试框架搭建(五)--Python+Appium+pytest-html

    第一章 APP自动化环境搭建(Mac版) 第二章 APP自动化环境搭建(Windows版) 第三章 adb命令 第四章 元素定位.元素操作 第五章 APP自动化测试框架搭建 Python+Appium ...

  3. APP自动化测试框架搭建(八)--ATX Server2多设备集群环境搭建

    第一章 APP自动化环境搭建(Mac版) 第二章 APP自动化环境搭建(Windows版) 第三章 adb命令 第四章 元素定位.元素操作 第五章 APP自动化测试框架搭建 Python+Appium ...

  4. APP自动化测试框架

    目前常见的APP自动化测试框架有以下几类: 1. Instrumentation Instrumentation,早期Google提供的Android自动化测试工具类.它和Activity有点类似,但 ...

  5. APP自动化测试框架搭建(六)--uiautomator2、web-editor基础操作

    第一章 APP自动化环境搭建(Mac版) 第二章 APP自动化环境搭建(Windows版) 第三章 adb命令 第四章 元素定位.元素操作 第五章 APP自动化测试框架搭建 Python+Appium ...

  6. 如何搭建App自动化测试框架?

    目录 前言 安装Java JDK 安装Node.js 安装Appium server 第一种:使用npm工具 第二种:安装desktop版本 配置环境变量 安装Android SDK 下载SDK及安装 ...

  7. uiautomator2,一款比appium还好用的app自动化测试框架

    一说到app自动化测试,第一反应就会想到appium这个框架,和web端的selenium一样,但是对于appium来说,搭建环境非常重要,很多人都被环境搞得望而却步了,放弃了appium. 下面说的 ...

  8. APP自动化测试框架-UiAutomator2基础入门

    前言 很早以前,我用uiautomator+java实践过Android APP自动化测试,不过今天要提的不是uiautomator,而是uiautomator2.听起来uiautomator2像是u ...

  9. Appium App自动化测试框架【一】

    本文为博主原创,未经许可严禁转载. 本文链接:https://blog.csdn.net/zyooooxie/article/details/113841107 2018年我开始在csdn写博客,最初 ...

最新文章

  1. C++智能指针:unique_ptr详解
  2. 容我喝一杯 java_花一杯茶的时间,学会Java反射(实用篇)
  3. 我的mongo学习之路
  4. java 底层运行_从表面到底层丨Java和JVM的运行原理,现在带给你
  5. CVPR 2020最新热点:物体位姿估计
  6. CSS 特殊性、继承与层叠
  7. 一、Objective-C之Runtime的概念
  8. RabbitMQ 构建高可靠集群架构
  9. The netfilter.org project
  10. IDEA 报 「Could not autowire. No beans of ‘UserMapper‘ type found」错误解决方案
  11. Java 常用正则表达式搜集ing
  12. CocoaPods管理第三方
  13. linux的forx函数-进程控制
  14. C语言--指针实现字符串逆序输出
  15. 论坛刷访客神器-Header自定义工具
  16. 肇庆学院计算机基础学分,肇庆学院学分制学籍管理实施细则试行-肇庆学院教务处.DOC...
  17. 知识图谱嵌入|KG-BERT代码 ConvE ConvR
  18. 微信公众平台测试号登录入口地址
  19. 【项目记录】Linux日志审计系统
  20. CF633C Spy Syndrome 2 ACA+DP

热门文章

  1. 使用MyBatis-Plus 导致接口响应变慢的原因分析
  2. c语言编程模拟机械钟表行走,C语言课程设计报告-模拟时钟转动程序
  3. [Android6.0][MTK6737] MTK 编译环境搭建
  4. 网络安全等级保护测评——岗位职责、权限划分设计思路(三权分立)
  5. ipmitool获取服务器信息
  6. 跟Excel say bye bye! 视觉化分析掌握财务报表重点
  7. 才子佳人与QQ游戏美女找茬外挂实现
  8. Android中的底部导航栏切换TabContainerView
  9. samba服务之samba-swat后台管理
  10. [C++]实现简单无符号整数进制转换器