千家信息网

Android常用9种自动化测试框架是什么

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍"Android常用9种自动化测试框架是什么",在日常操作中,相信很多人在Android常用9种自动化测试框架是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2025年01月20日Android常用9种自动化测试框架是什么

这篇文章主要介绍"Android常用9种自动化测试框架是什么",在日常操作中,相信很多人在Android常用9种自动化测试框架是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Android常用9种自动化测试框架是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

移动APP自动化测试的难点

移动APP的UI自动化测试长久以来一直是一个难点,难点在于UI的"变", 变化导致自动化用例的大量维护。从分层测试的角度,自动化测试应该逐层进行。最大量实现自动化测试的应该是单元测试,最容易实现也最容易在早期发现问题;其次是接口级测试,以验证逻辑为目的进行自动化,由于接口的相对稳定,自动化测试成本相对也可以接受;自动化成本最大的便是UI级自动化测试,然而UI界面是直接反馈给用户的效果展示,适度的尤其是BVT级的自动化测试也是非常必要的。

为了摆脱这些,需要引进一些自动化测试来协助我们。趁现在有空我来总结下,Android常用的几种自动化测试框架的异同,使测试人员在选择自动化框架时有所参考!

Android几种常用自动化测试框架对比

1、Monkey是Android SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。

2、MonkeyRunner也是android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本用Python来写,对测试人员来说要求较高,有比较大的学习成本。

3、Robotium也是基于Instrumentation的测试框架,主要针对某一个APK进行自动化测试,APK可以有源码,也可以没有源码,功能强大;缺点是对测试人员来说要有一定的Java基础,了解Android基本组件,不能跨App。

4、Instrumentation是早期Google提供的Android自动化测试工具类,虽然在那时候JUnit也可以对Android进行测试,但是Instrumentation允许你对应用程序做更为复杂的测试,甚至是框架层面的,是很多其它测试框架的基础,可以在同进程中加载被测组件。它有很多丰富的高层封装,使用者可以使用基于instrumentation的其他框架,避免过多二次开发量。但Instrumentation不支持跨应用,导致基于instrumentation的框架都继承了这个缺点。

5、UIAutomator是由谷歌提供的测试框架,它提供了原生Android app和游戏的高级UI测试。基本上支持所有的Android事件操作,与Instrumentation对比,它不需要测试人员了解代码实现细节(可以用UiAutomatorviewer抓去App页面上的控件属性而不看源码)。

基于Java,测试代码结构简单、编写容易、学习成本,一次编译,所有设备或模拟器都能运行测试,能跨App(比如:很多App有选择相册、打开相机拍照,这就是跨App测试)。

缺点是只支持SDK 16(Android 4.1)及以上,不支持Hybird App、WebApp。

6、Espresso是Google的开源自动化测试框架。相对于Robotium和UIAutomator,它的特点是规模更小、更简洁、API更加精确、编写测试代码简单、容易快速上手。因为是基于Instrumentation的,所以不能跨App。

7、Selendroid:是一个基于Instrumentation的一个框架. 完全兼容Webdriver协议。 Selendroid 可以在模拟器和实际设备上使用,也可以集成网格节点作为缩放和并行测试。

8、Athrun是淘宝出的一个移动测试框架/平台,同时支持iOS和Android。Android部分也是基于Instrumentation,在Android原有的ActivityInstrumentationTestCase2类基础上进行了扩展,提供一整套面向对象的API。

9、Appium是一个开源的、跨平台的自动化测试工具,这个框架应该是功能最强大的,下面我将详细介绍。

Appium的优缺点

它的优点:

①开源;

②支持Native App、Hybird App、Web App;

③支持Android、ios、Firefox OS;

④Server也是跨平台的,你可以使用Mac OS X、Windows或者Linux;

它的哲理是:

用Appium自动化测试不需要重新编译App;

支持很多语言来编写测试脚本,Java、JavaScript、PHP、python、C#、Ruby等主流语言;

不需要为了自动化测试来重造轮子,因为扩展了WebDriver。(WebDriver是测试WebApps的一种简单、快速的自动化测试框架,所以有Web自动化测试经验的测试人员可以直接上手);

移动端自动化测试应该是开源的;

到此,关于"Android常用9种自动化测试框架是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

测试 自动化 框架 支持 常用 工具 学习 人员 事件 成本 测试工具 缺点 移动 代码 基础 源码 程序 脚本 难点 应用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 扩充功能是数据库设计的什么阶段 计算机网络技术有必要专升本吗 打开数据库删除图书 企业微信定位软件开发 焦作大学软件开发在哪个校区 吉林学校卫星授时服务器 魔兽世界数据库取消了 魔兽世界月卡数据库 电视户户通服务器的数据接受超时 数据库软件 类似Excel 汽车屏显示服务器错误 天涯明月刀端游无法连接到服务器 广东创新网络技术服务单价 变电站plc管理服务器 网络安全的简单句英语 彩票软件开发公司巨头 网络安全教育简报小学 山西线上生鲜配送软件开发 煤矿网络安全与防范措施的实践 软件开发者哪里看 成都移动网络技术员 搭建论坛 access数据库 杭州洲际互联网科技有限公司 网络安全进课堂视频 天涯明月刀端游无法连接到服务器 网络安全的主要收获ppt tc12数据库 网络安全渠道商分类 换路由器后无法连接公司服务器 软件开发到一半对方要求终止开发
0