如何一起使用MonkeyRunner和Robotium(不单独!)

时间:2014-07-25 11:53:30

标签: android testing robotium android-testing monkeyrunner

如何一起使用MonkeyRunner和Robotium(不单独!)来测试我的Android应用程序

2 个答案:

答案 0 :(得分:2)

好吧,我找到了这个

http://download.yandex.ru/company/experience/yac2012/kharitonenko_yac_2012.pdf

幻灯片#22。有一个方案,如何使用Robotium和Monkeyrunner的组合。 例如,在测试中,您需要从Android原生相机拍摄快照,而Robotium无法做到这一点。 Monkeyrunner可以做到。但是你的大部分测试用例都是在Robotium中开发的,据我所知,你可以为这个动作运行monkeyrunner脚本,然后继续使用Robotium。我是对的吗?

答案 1 :(得分:1)

通常,MonkeyRunner基于用户输入的通用内置android工具。它不需要任何代码知识,也不会产生对应用程序进程的任何访问权限。

Robotium或Espresso基于GoogleInstrumentationTestRunner,它在与您的应用相同的流程中运行,因此允许直接访问视图组件,但也需要代码访问。

所以一般来说你可以用Robotium / Espresso完成大部分的猴子跑步者输入动作,但是你不能在Robotium测试中使用猴子跑步者,这可以通过 机器人安全机制。

另一种方法是在脚本环境中运行Monkey-runner仪器以及Robotium测试,其中monkey-runner在进程之间切换,并在某个时间执行所需的Robotium测试,但这种概念可能非常不稳定。

两者的替代方案是UI Automator Tests。它们提供了Robotium的好处 - 访问View Hierarchy - 以及Monkey Runner的灵活性 - 使用任意输入命令 - 但不需要任何代码知识。