我有一个在 Jenkins 中构建的 Android 项目。 我已经设置了一个 JUnit 测试项目来对应用程序进行单元测试。这在 Jenkins 中得到了很好的整合。所有测试都由 Ant 构建文件运行,测试结果可以通过插件显示在 Jenkins 中。
现在我为 Monkeyrunner 编写了一些功能测试,并希望将它们也集成到 Jenkins 构建中。
有什么方法可以做到这一点? 当然,我可以调用 Monkeyrunner 作为 shellscript-buildstep。
据我所知,在 Monkeyrunner 脚本中我只能做类似的事情:
test some stuff...
if xyz:
print 'test successful'
else:
print 'test failed'
但是,Jenkins 没有Monkeyrunner 插件,Jenkins 怎么知道测试结果呢? 我是否必须以某种方式读出控制台,或者我应该怎么做?
希望大家能看懂我的问题,我的英文不是很好。
提前致谢!
最佳答案
如果您的脚本以 0
的退出状态退出,Execute 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
关于android - 如何在 Jenkins 中集成 Monkeyrunner 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19991684/