移动端自动化测试框架和工具

1.Monkey:

Monkey: android SDK 自带的测试工具,用来测试稳定性,性能等,更多用于客户端性能,发送的随机事件

Monkey 的谷歌官方地址是:http://www.android-doc.com/tools/help/monkey.html  
 
2.Monkeyrunner:
Monkeyrunner: android SDK 自带的测试工具。Monkey 更多用于客户端性能,发送随机事件,而Monkeyrunner可以用于做功能测试,回归测试并且可以自己定义测试扩展,灵活性较大。
Monkeyrunner 工具提供了一些API,可以通过该API来控制Android设备或者模拟器。 可以通过编写python脚本去安装Android 应用,运行应用,发送模拟按键,手势,截图等等,可以模拟人在设备几乎所有操作。
网上已经很多人分享了Monkeyrunner录制脚本和回放的脚本,可以下载下来,直接放到android SDK的platform-tools目录下,通过命令 monkeyrunner 脚本名便可以启动录制器,录制你需要的自动化测试脚本或者回放。
Monkeyrunner 足够强大了,但是录制的脚本是以坐标轴来作为定位方式,而安卓设备类型众多,各种分辨率,所以移植性不好。
Monkeyrunner 的谷歌官方地址:http://www.android-doc.com/tools/help/monkeyrunner_concepts.html
 
3.Uiautomator:
Monkeyrunner 的定位是以坐标轴的方式,移植性差。而Uiautomator 则很好的解决了这点。Uiautomator 是通过以控件的方式来定位,当然也是支持坐标轴的方式来定位。Uiautomator是Android 4.1后加入的,所以仅支持Android 4.1 和以上的版本,但是不支持webview。
Uiautomator 谷歌官方地址:http://android.toolib.net/tools/help/uiautomator/index.html
 
4.Robotium:
Uiautomator 仅仅支持4.1以上的版本,然后国内用户Android 升级较慢,还存在非常多的4.1以下版本,所以Uiautomator 貌似也就变得不能满足要求了。 
Robotium 则很好的解决了这点,它支持所有的Android 版本,是居于原生的Instruments 二次封装的一个框架。最新版本好像已经更新到了5.0.1, 稳定性等都不错。而且官方还出了一个录制插件 Robotium Recorder(http://robotium.com/products/robotium-recorder)不过这个插件是需要收费的。
Robotium 只支持Java语言开发并只支持Android,并不支持跨进程。
Robotium的中文地址:http://www.robotium.cn/
 
5.Appium:
Appium 官方宣称支持同时支持Android, IOS, FirefoxOS。并且appium 你可以用任何你熟悉的开发语言来进行编写测试用例。例如Java, Python, Ruby, PHP, JavsScript, Object-C, C#.....
Appium 在Android 上如果是大于4.1 则用的是uiautomator, 以下版本则使用Selendroid(selenium for android). IOS上采用uiautomation库做支持。
Appium 的稳定性相对较差点,但是同样采用的控件的定位方式对不懂java而熟悉其它语言的来说还是相当不错的选择。
Appium 官方地址:http://appium.io/
有个论坛也可以看看:http://testerhome.com/
 
以上均是开源项目或者部分开源,源代码都可以找到。 当然像百度也有一个移动端测试框架叫 云cafe, 阿里好像也有个。
 
 
工具比较:
转自: 
posted @ 2016-12-02 12:43  funfunyuan  阅读(416)  评论(0编辑  收藏  举报