Maven Mark Jenkins根据测试/集成测试失败生成红色/黄色

Maven Mark Jenkins根据测试/集成测试失败生成红色/黄色,maven,junit,jenkins,integration-testing,Maven,Junit,Jenkins,Integration Testing,我配置了Jenkins构建(项目使用Java、Maven、JUnit)。根据单元测试失败的Maven阶段,我想将构建标记为红色、黄色或绿色: 编译错误:红色 Maven阶段“测试”失败:红色 Maven阶段“集成测试”失败:黄色 成功:绿色 我该怎么做呢?您可以使用插件之类的东西来解析特定模式的日志。这应该能满足基本需求 如果您需要更复杂的东西(听起来您可能需要),您可以查看插件并使用Groovy脚本来完成这项工作。该脚本仍将解析控制台日志,但为您提供了更大的灵活性,并允许您向构建页面添加自

我配置了Jenkins构建(项目使用Java、Maven、JUnit)。根据单元测试失败的Maven阶段,我想将构建标记为红色、黄色或绿色:

  • 编译错误:红色

  • Maven阶段“测试”失败:红色

  • Maven阶段“集成测试”失败:黄色

  • 成功:绿色


我该怎么做呢?

您可以使用插件之类的东西来解析特定模式的日志。这应该能满足基本需求

如果您需要更复杂的东西(听起来您可能需要),您可以查看插件并使用Groovy脚本来完成这项工作。该脚本仍将解析控制台日志,但为您提供了更大的灵活性,并允许您向构建页面添加自定义消息

类似以下的方法可能会起作用:

class ChangeResult {

    static def run(manager) {

        if(manager.logContains("Some compilation error")) {
            manager.addWarningBadge("Compilation Error")
            manager.createSummary("warning.gif").appendText("Build failed due to compilation error", false, false, false, "red")
            manager.build.@result = hudson.model.Result.FAILURE
        }
        if(manager.logContains("Some integration error")) {
            manager.addWarningBadge("Integration Error")
            manager.createSummary("warning.gif").appendText("Build unstable due to integration error", false, false, false, "red")
            manager.build.@result = hudson.model.Result.UNSTABLE
        }
    }
}

你找到解决办法了吗?