我正在使用JUnit 5 Gradle插件,如下所述: http://junit.org/junit5/docs/current/user-guide/#running-tests-build-gradle
我将以下部分添加到gradle.build
文件中:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.3'
}
}
plugins {
id 'java'
id 'application'
// ... some others...
}
apply plugin: 'org.junit.platform.gradle.plugin'
dependencies {
testCompile group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.0.3'
testRuntime group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.0.3'
}
有了上述内容,当我使用gradle build
任务时 - 我有以下输出:
Executing task 'build'...
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:findMainClass
:startScripts UP-TO-DATE
:distTar
:distZip
:bootRepackage
:assemble
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:junitPlatformTest UP-TO-DATE
:test SKIPPED
:check UP-TO-DATE
:build
BUILD SUCCESSFUL
由于这包括junitPlatformTest
,我假设该插件会覆盖常规build
任务。我想知道是否有办法避免这种行为。
答案 0 :(得分:3)
该插件不会覆盖build
任务。它添加了从test
任务到junitPlatformTest
任务的依赖项,并且(默认情况下)禁用标准test
任务(以避免多次执行基于JUnit 4的测试)。
build
取决于check
和assemble
,check
取决于test
(请参阅Gradle User Manual)。因此,当您执行build
时,junitPlatformTest
将按照您的示例执行。