如何在Jenkins中集成Monkeyrunner测试?

时间:2013-11-15 01:10:04

标签: android testing jenkins monkeyrunner

我有一个我在Jenkins中构建的Android项目。 我已经为应用程序的单元测试设置了一个JUnit测试项目。这在Jenkins中很好地集成了。所有测试都由Ant构建文件运行,测试结果可以通过插件显示在Jenkins中。

现在我为Monkeyrunner编写了一些功能测试,并希望将它们集成到Jenkins构建中。

有什么方法可以做到这一点? 当然,我可以将Monkeyrunner称为shellcript-buildstep。

根据我的理解,在Monkeyrunner脚本中,我只能做类似的事情:

test some stuff...
if xyz:
  print 'test successful'
else:
  print 'test failed'

但是,由于Jenkins没有Monkeyrunner插件,Jenkins如何知道测试结果? 我是否必须以某种方式读出控制台,或者我应该怎么做?

我希望你们能理解这个问题,我的英语不是那么好。

提前谢谢!

2 个答案:

答案 0 :(得分:1)

如果脚本以退出状态0退出,则执行shell任务将标记构建成功。所有其他退出状态都会将构建标记为失败。在您的monkeyrunner脚本中,您可以使用exit()语句设置退出状态。

# test some stuff...
if xyz:
  sys.exit(0) # success
else:
  sys.exit(1) # failure

如果您需要更精细的内容,如果使用退出代码不足,您可以使用类似Text-finder Plugin的内容来解析Monkeyrunner脚本的输出。

编辑:澄清,添加一个执行shell步骤,并从该步骤中调用monkeyrunner脚本。如果脚本退出状态为0,则Jenkins将继续,否则将无法构建。

您可能需要提供monkeyrunner interpereter的完整路径,即:

/path/to/android-sdk/tools/monkeyrunner my-script.mr

答案 1 :(得分:0)

尽管名称如此,但您可以使用Android Emulator Plugin在您的真实设备上执行Monkey压力测试。