Gradle:仅在给定特定参数时运行测试



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

如果 buildType 不是显式 PR 生成,则测试不应运行。

我怎么能达到这样的行为?

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

实际排除将取决于您使用的测试库。例如,对于JUnit5您可以使用标签执行此操作。

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

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

最新更新