首页 > 代码库 > Android 手机自动化测试工具有哪几种?

Android 手机自动化测试工具有哪几种?

Sikuli (sikuli.org),基于优秀的图像对比库opencv的测试工具,测试脚本使用Python编写,非常强大。如果你的app没有源码,可以选择它;或者你想做系统测试(跨app的测试),也可以选择它。其它的还是用下面说的那些个吧


应用层的 
先说说开源的吧:

  1. Robotium
  2. Monkeyrunner
  3. Robolectric
  4. CTS
还有个新兴的测试工具,以前在GitHub看到,现在找不到了,好像是BDD类型的语法;现在还不成熟。 

另外基于web的测试也有基于Selenium Webdriver 的 Android WebDriver: 
有两种:
  • 基于Remote Server的:官方提供了java接口的,但是Python版的官方里面却没有。我非常喜欢Python,所以自己实现了并且开源到了GitHub:github.com/truebit/Andr 有问题大家可以提到上面 
  • 基于Instrumentation的:已经在Android SDK r14里面可以安装了
不开源的就多了,不过我见过的一般是以下几种思路: 
1. 基于Android Java Instrumentation框架:
  • 基于Robotium,比如bitbar的产品:bitbar.com/products
  • 基于Instrumentation,那就海了去了,很多公司自家写的工具都基于这个;另外Robotium就是基于这个的
2. 基于Android lib层的各种命令,比如sendevent,getevent, monkey, service这些,然后用各种语言封装 

MonkeyRunner还是很有前景的,Google自己弄的。现在最新的dev版本已经有支持UI的id操作的EasyMonkey了。

分类的角度来回答

1)纯白盒方式的测试,Monkey。楼上已经有哥们提到了,使用moneky更多的是开发team,而不是纯粹的测试team,毕竟要求对android开发比较了解才用得了monkey。

2)偏白盒的robotium,这家伙号称是黑盒,但是本人不太认同~ 因为使用robotium需要知道package

补充几个介绍:

  • sikuli,是MIT的几个高材生搞的一套图形化编程系统,可以用来测试任何图形界面,配合工具screencast,即可方便的利用Sikuli来测试真实手机,语言用python语法,都是可视化的脚本。
  • Monkey,用于app的稳定性测试。业界通用的哦,不会用的话不要说你是做android开发的。
  • ASE,android script environment,是API的脚本实现,稳定性一般,环境配置稍复杂,不过,编


Android 手机自动化测试工具有哪几种?