Gradle:仅在指定参数的情况下运行测试

时间:2019-10-17 09:18:59

标签: java unit-testing testing gradle

我只想在进行PR构建时才运行特定的单元测试。 在此构建过程中,我可以传递参数,例如。 'buildType'指定它是PR构建。

如果buildType不是明确的PR构建,则测试永远不会运行。

我如何实现这种行为?

我是否创建了可以以某种方式配置的单独任务。还是我甚至创建另一个模块?

1 个答案:

答案 0 :(得分:1)

实际排除将取决于您使用的测试库。例如,使用JUnit5可以使用tags

您首先要从正常测试任务中排除标记为@Tag("PR")的测试。然后,您将定义特定任务,例如prTest,其中还包括标有@Tag("PR")的测试。

test {
    useJUnitPlatform {
        excludeTags 'PR'
    }
}

task prTest(type: Test) {
    useJUnitPlatform {
        includeTags 'PR'
    }
    shouldRunAfter test
}