在测试失败的情况下,不允许触发Jenkins构建

时间:2016-07-28 12:26:26

标签: unit-testing jenkins continuous-integration

小詹金斯关于詹金斯触发机制的问题 我想要一个单元测试失败的构建不再自动触发。
打破测试的开发人员必须修复它并手动启动构建。

我试图找到一个解决方案,而且最好的解决方案是'我找到的解决方案是使用Disable Failed Job Plugin。 但我对此并不满意,因为构建完全禁用。

詹金斯有可能这样做,还是存在一些可以帮助我的插件?

谢谢,

的Seb

3 个答案:

答案 0 :(得分:2)

编写 Groovy脚本/ Java程序

从jenkins控制台读取单元测试日志,它将合并并且不会给你传递/失败的测试用例。如果失败的测试用例大于0,请设置 System.exit(1)

在应用程序构建步骤执行之后,从批处理或sh。

命令行调用此脚本或java程序

答案 1 :(得分:1)

尝试Multijob插件

使用顺序工作流程,您可以选择执行下一个测试(作业),即使当前作业失败。

答案 2 :(得分:1)

没有简单的解决方案。如果作业配置了SCM polling构建触发器,则只要发生更改, 就会运行。

因此,如果您想在不禁用作业的情况下阻止,那么必须从作业配置中删除SCM触发器。可以自动执行此操作,但您最终会设置一个丑陋的设置,因为

  • 作业配置将由作业本身动态更改,因此
  • 可能会干扰手动配置工作。

我建议在失败时坚持禁用作业。您可以另外设置开发人员可以手动触发的作业副本。