2

Gradle 1.4 有新的测试报告聚合任务: http ://www.gradle.org/docs/current/release-notes#stand-alone-test-report-task

task testReport(type: TestReport) {
    destinationDir = file("$buildDir/reports/all-tests")
    reportOn subprojects*.test
}

即使构建失败,有没有办法让这个任务运行?目前,如果我这样做:

taskReport.dependsOn test
build.dependsOn taskReport

它仅在构建成功时执行。

4

1 回答 1

2

首先是好消息:Gradle 任务模型即将推出的增强功能(目前计划在 Gradle 1.6 中使用)将解决这个和类似的用例。

同时,可能性是有限的。一种选择是与 一起运行--continue,尽管这也将继续执行其他任务。另一个可能的选择是注册一个org.gradle.api.execution.TaskExecutionListener(via gradle.project.addListener()) 并在任务失败testReport.generateReport()后让它调用。Test尽管不鼓励直接调用任务(并且通常不会产生预期的行为),但在这种特殊情况下它可能会作为临时解决方法。

于 2013-02-04T22:32:26.313 回答