该方法已弃用,并且也给了我null。我在此方面获得了更多成功:
project.lastBuild.getAction(hudson.tasks.test.AggregatedTestResultAction.class)
尽管它可以为null只是因为项目中没有测试。无论如何,这是一种测试结果的方法,对我有用。
def reportonTestsForBuild(build) { testResultAction = build.getAction(hudson.tasks.test.AggregatedTestResultAction.class); if (testResultAction == null) { println("No tests") return } childReports = testResultAction.getChildReports(); if (childReports == null || childReports.size() == 0) { println("No child reports") return } def failures = [:] childReports.each { report -> def result = report.result; if (result == null) { println("null result from child report") } else if (result.failCount < 1) { println("result has no failures") } else { println("overall fail count: ${result.failCount}") failedTests = result.getFailedTests(); failedTests.each { test -> failures.put(test.fullDisplayName, test) println("Failed test: ${test.fullDisplayName}n" + "name: ${test.name}n" + "age: ${test.age}n" + "failCount: ${test.failCount}n" + "failedSince: ${test.failedSince}n" + "errorDetails: ${test.errorDetails}n") } } }}


