腾讯Android自动化测试实战1.1 Android自动化测试框架概述

1.1 Android自动化测试框架概述

2007年Android开源时,Monkey、Instrumentation和MonkeyRunner这3个测试框架,是跟Android源码一起发布的,这也是最早可用的自动化测试框架,那几年大家基本都是用这些框架来开展自动化相关测试工作的。2010年,第一个第三方的测试工具Robotium(基于Instrumentation)发布了,不少测试人员就转用这个框架,Robotium社区逐步发展起来。图1-1所示为Robotium热度随时间变化的趋势。

2010年还有一个自动化测试框架Robolectric开源了,主要支持单元测试;Robolectric 允许用户做大部分真实设备上可以做的事情,且可以在常规的JVM持续集成环境中运行,不需要通过模拟器,因此可以摆脱模拟器启动慢的问题。

 

 

图1-1 Robotium热度随时间变化的趋势

注:引用自https://www.google.com/trends/explore#q=robotium

2011年新发布的Android SDK包含了chimpchat,可以通过Java来调用Monkey,也可以用Java语言实现类似MonkeyRunner功能(MonkeyRunner之前只支持Python)。

2013年则是一个Android自动化测试框架爆发年,Selendroid、Espresso、Calabash、Appium等框架都是在这一年发布或者开源的。其中,Appium整合Selendroid以及UI Automator等框架的优点,使用Selenium的WebDriver JSON协议,使WebDriver用户使用起来非常方便。自2013年以来,Appium发展非常迅速(不过基本上是印度的同学在搜索)。图1-2所示为Appium热度随时间变化的趋势。

 

图1-2 Appium热度随时间变化的趋势

注:引用自https://www.google.com/trends/explore#q=Appium

按照时间线,把上面介绍的自动化测试框架梳理一下,如图1-3所示。

当然国内也有不少团队或者个人开发自动化测试框架并开源,例如百度的Café(https://github.com/BaiduQA/Cafe),阿里巴巴的两个自动化测试框架Athrun)http://code.taobao.org/svn/athrun)、Macaca(http://macacajs.github.io/macaca/)。腾讯内部也开发了Android自动化框架,不过暂时没有开源。相信国内其他公司也在开发相关自动化框架,有些公司基于已有的开源框架二次开发定制适合自己项目的自动化框架,可能暂时也没有开源。

 

图1-3 Android自动化测试框架时间线

注:上面提到的是相对有一定使用人数的自动化测试框架,除此之外,业界还有不少其他测试框架,如MonkeyTalk、RoboSpock、NativeDriver等。

上面简单介绍了Android自动化测试框架的历史(时间线展示)。Android自动化测试里面还涉及到一个签名的问题(Instrumentation的限制),我们按照重签名的维度重新划分一下,方便读者做自动化测试框架的选型。图1-4所示为Android自动化测试框架图谱,仅供参考。

 

 

图1-4 Android自动化测试框架图谱

注:Appium不需要更改被测App签名;

Hybrid:混合Android原生控件以及Webview控件;

Native:纯Android原生控件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值