'스프링부트와 aws로 혼자 구현하는 웹서비스' 책을 보며 스프링 부트 프로젝트 진행 중, 해당 책 211p의 전체 테스트 수행이 제대로 실행되지 않았다.
Gradle 탭의 Tasks-verification-test를 클릭하면 전체 테스트가 수행되야하는데 테스트 결과 창에는 test events were not received 라는 문구만 출력되며 테스트가 전혀 수행이 되지 않았다.
이 문구를 구글링해보면 대부분 테스트 실행환경을 Gradle에서 intelliJ IDEA로 바꾸라는 조언이 대부분이다.
하지만 나의 경우에는 이미 그 설정을 해놓아 그 부분이 문제가 되지는 않았다.
문제는 처음 프로젝트 생성 시 자동으로 완성되어있는 build.gradle 파일 안에 있었다.
plugins {
id 'java'
}
group 'com.example.smspring'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
}
test {
useJUnitPlatform()
}
보통 프로젝트를 생성하면 위와 같이 기본적인 형태가 완성되어있다.
여기서 맨 마지막 부분의 useJUnitPlatform() 이 문제가 되는 부분이다.
useJUnitPlatform() 은 간단하게 설명하자면 JUnit5 환경에서 JUnit4 테스트를 지원하기 위해 사용된다.
이는 기본적으로는 JUnit5가 실행되기 때문에 저 구문이 추가되어있는 것이고 현재 내 프로젝트에서는 JUnit4를 사용하기 때문에 해당 구문을 지워야한다.
지우고 나면 정상적으로 전체 테스트가 실행된다.
참고 : https://github.com/jojoldu/freelec-springboot2-webservice/issues/554
'Spring > 기타' 카테고리의 다른 글
[Spring boot] mybatis 설정 sqlsession 관련 설정이 필요없는 이유 (0) | 2022.05.09 |
---|---|
Error executing DDL 오류 해결방법 (0) | 2022.02.07 |
IntelliJ 프로젝트 JDK 버전 변경하기 (0) | 2022.01.13 |
Gradle에 lombok 의존성 추가하기 / not initialized in the default constructor 오류 해결 (0) | 2022.01.06 |
Gradle 7 기본 변경점 (0) | 2022.01.06 |