我有一个在Jenkins中构建的Android项目。
我已经建立了一个JUnit测试项目来对应用程序进行单元测试。这在詹金斯中很好地集成了。所有测试均由Ant构建文件运行,并且测试结果可以通过插件在Jenkins中显示。
现在,我为Monkeyrunner编写了一些功能测试,并且也希望将其集成到Jenkins构建中。
有什么方法可以做到这一点?
当然,我可以将Monkeyrunner称为shellscript-buildstep。
据我了解,在Monkeyrunner脚本中,我只能执行以下操作:
test some stuff...
if xyz:
print 'test successful'
else:
print 'test failed'
但是,由于Jenkins没有Monkeyrunner插件,Jenkins如何知道测试结果?
我必须以某种方式读出控制台,还是应该怎么办?
我希望你们能理解这个问题,我的英语不是那么好。
先感谢您!
最佳答案
如果您的脚本以退出状态0
退出,则执行Shell任务将标记生成成功。所有其他退出状态均会将构建标记为失败。在Monkeyrunner脚本中,您可以使用exit()
语句设置退出状态。
# test some stuff...
if xyz:
sys.exit(0) # success
else:
sys.exit(1) # failure
如果您需要更精细的内容,则在使用退出代码不足的情况下,可以使用Text-finder Plugin之类的东西来解析Monkeyrunner脚本的输出。
编辑:进行澄清,添加一个“执行”外壳程序步骤,然后从该步骤中调用Monkeyrunner脚本。如果脚本以
0
状态退出,则Jenkins将继续,否则将导致构建失败。您可能需要提供Monkeyrunner Interpereter的完整路径,即:
/path/to/android-sdk/tools/monkeyrunner my-script.mr
关于android - 如何在Jenkins中集成Monkeyrunner测试?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19991684/