如何根据testng测试的通过率阈值使Jenkins工作失败

时间:2016-08-10 22:23:07

标签: maven jenkins testng jenkins-plugins

我们正在尝试使用Jenkins作为我们的CI / CD解决方案,并且如果我们的TestNG测试不符合设置的通过率阈值,则希望能够使部署失败。

目前我们的Jenkins作业通过maven执行我们的TestNG测试,因此任何测试失败都会将构建标记为失败。即任何低于100%通过率的东西都会使构建工作失败。

我们希望能够使其可配置 - 例如,如果通过率低于98%,则测试作业失败。

这是我可以通过一些插件在Jenkins作业中控制或配置的东西,还是我必须在TestNG监听器内编码,即onFinish()并根据计算的通过率设置返回值?

1 个答案:

答案 0 :(得分:0)

我假设你的测试用例中存在一些瑕疵导致你即使有2%的失败也会使构建通过?否则,我说不到100%是构建失败。

话虽如此,如何使用Sonar

有了它,当单元测试成功时,你可以使构建失败。 98%(参见一些示例屏幕截图here)。

您也可以在其他场合失败。例如,当覆盖率降至某个数量以下或发现严重问题时。此外,您还可以获得包含所有与构建相关的指标的仪表板的额外奖励。

当质量门低于某个阈值时,您需要下载名为Build Breaker的插件,该插件将无法构建。

有一点需要注意的是,Sonarqube人建议你don't use this plugin。因此,您也可以执行query the Sonar rest api之类的操作并使构建失败或等到add core support for it