에러 해결
junit5 failed to load applicationcontext 에러 해결
인지용
2021. 12. 13. 20:09
발생 원인
나는 application.yml 외에도 다른 yml 파일도 추가해서 사용하고 있었는데
그 yml 파일들의 값을 읽지 못해서 발생한 에러다.
해결 방법
첫 번째
@SpringBootTest 어노테이션에 properties 속성에 yml 경로를 추가하면 된다.
Test폴더의 Main클래스에 추가하면 된다.
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest(properties =
"spring.config.location = " +
"classpath:/application.yml," +
"classpath:/yml/coolsms.yml," +
"classpath:/yml/oauth2.yml"
)
class ExampleApplicationTests {
@Test
void contextLoads() {
}
}
그리고 테스트 코드를 작성하면 된다.
두 번째
변수 선언은 application.properties에서 하면 된다.
설정은 application.yml에서 그대로 하고
모든 변수 값들만 properties에 선언하면 된다.
(즉 프로젝트에서 @Value 어노테이션을 사용해서 받아오는 값들)
그러면 테스트가 정상적으로 실행된다.
(참고로 나는 두 번째 방법을 사용하고 있다.)