Обновление с JUnit 4 до JUnit 5 в Intellij с Gradle
Я хочу преобразовать свой тестовый проект Gradle из JUnit 4 в JUnit 5. Поскольку существует множество тестов, я не хочу конвертировать их все одновременно.
Я пытаюсь настроить мой build.gradle
как это:
apply plugin: 'java'
compileTestJava {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
repositories {
mavenCentral()
}
dependencies {
testCompile("junit:junit:4.12")
testCompile 'org.junit.jupiter:junit-jupiter-api:5.0.0-M2'
testRuntime("org.junit.vintage:junit-vintage-engine:4.12.0-M2")
testRuntime 'org.junit.jupiter:junit-jupiter-engine:5.0.0-M2'
}
Старый тест все еще выполняется, но Intellij не распознал новый тест JUnit 5, подобный этому:
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertTrue;
public class JUnit5Test {
@Test
void test() {
assertTrue(true);
}
}
Я использую Intellij 2016.2 с Gradle 2.9
2 ответа
Начиная с версии 4.6 для Gradle, больше нет необходимости в плагинах.
Gradle изначально поддерживает Junit5:
dependencies {
test.useJUnitPlatform()
testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion"
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion"
testRuntimeOnly "org.junit.vintage:junit-vintage-engine:4.12.0"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion"
}
В настоящее время Intellij IDEA поддерживает JUnit5.
Посмотрите на хорошую статью об интеграции JUnit5 с IDEA: Использование JUnit 5 в IntelliJ IDEA