공부/Spring

Spring boot test 경로가 다른 패키지 테스트 시 오류

2021. 1. 7. 00:44

어느 날 마주한 에러 문구

Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test

 

아래 그림과 같이 패키지를 여러 개 두는 경우가 있다.

어플리케이션 실행 시는 component scan 어노테이션을 이용하여 다른 패키지도 빈 생성이 가능하다.

하지만 테스트 시 OtherTest.java를 실행하게 되면 에러가 발생한다.

 

 

OtherTest.java

실행 시 에러 화면

 

이 문제로 많은 시간을 소비하였지만 해결 방법은 아주 간단하다.

원인은 테스트 파일이 demo 패키지 하위에 존재하지 않아서 @SpringBootApplication을 찾지 못하는 것이다.

따라서 해결방법은 해당 테스트에 이렇게 명시해주면 된다.

@SpringBootTest(classes = DemoApplication.class)

 

테스트 성공

 

해당 소스는 깃허브에서 확인 가능합니다.

github.com/ByeongUkChoi/blog-code/tree/main/other-package-test

 

 

 

반응형