Gradle - 在所有子模块的测试阶段之后运行testReport任务

时间:2016-04-07 09:35:33

标签: gradle

我有一个简单的project with subprojects,我想在执行gradle test命令时为所有测试生成汇总报告。

我已关注gradle documentation并添加了以下内容:

task testReport(type: TestReport) {
    // make sure this task is run after all subproject test tasks
    mustRunAfter subprojects*.test

    destinationDir = file("$buildDir/reports/allTests")
    // Include the results from the `test` task in all subprojects
    reportOn subprojects*.test
}

这在我执行gradle test testReport时有效,但当我在根项目中执行gradle testgradle build时,任务testReport未运行。

make gradle如何在不指定任务的情况下运行任务?

1 个答案:

答案 0 :(得分:3)

将<{1}}添加到build.gradle;只是在根级别,不必在任何关闭内。

test.finalizedBy 'testReport'

每次taskX成功完成执行时都会运行taskY。