JUnit 5 는 JDK 8+ 을 요구한다.
때문에 org.junit.jupiter.api.Assertions.. 를 사용하면 오류가 발생한다. (내부에서 Function 시리즈를 사용함.)
JUnit api 는 JUnit 4 이하의 org.junit.Assert... 를 사용해야 한다.
그리고 JUnit 5 에서, 이전 버전과의 런타임 호환성을 위한 vintage 를 의존성에 추가한다:
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.5.0'
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.5.0'
testImplementation "junit:junit:4.12"
testRuntimeOnly 'org.junit.vintage:junit-vintage-engine:5.5.0'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.5.0'
5.6.0 이상을 사용하니 아래와 같은 오류가 발생했다. 고쳐서 사용할 수 있는 방법이 있을 수 있으나, 일단 5.5.0 을 사용하기로 한다.
* What went wrong:
Execution failed for task ':compileTestJava'.
> Could not resolve all files for configuration ':testCompileClasspath'.
> Could not resolve org.junit.jupiter:junit-jupiter-api:5.6.0.
Required by:
project :
> Cannot choose between the following variants of org.junit.jupiter:junit-jupiter-api:5.6.0:
- javadocElements
- sourcesElements
All of them match the consumer attributes:
- Variant 'javadocElements' capability org.junit.jupiter:junit-jupiter-api:5.6.0:
- Unmatched attributes:
- Found org.gradle.category 'documentation' but wasn't required.
'Java > Spring Boot' 카테고리의 다른 글
스프링 어플리케이션(+컨텍스트) 이벤트 (0) | 2022.08.08 |
---|---|
test] 어노테이션 정리 (1) | 2022.08.03 |
MVC] Serving Static Resources (0) | 2020.08.15 |
Issue with Thymeleaf strict HTML parsing (0) | 2020.04.07 |
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test (0) | 2019.02.16 |