인프런 커뮤니티 질문&답변

형종님의 프로필 이미지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

JPA

@SpringBootTest 오류

작성

·

267

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]

image.png

에러를 다 찾아서 수정을 하였으나 마지막인 Test단계에서

계속 무시해버리네요 왜 그런건지 구글링을 해도 이해가

안됩니다. h2를 킨 상태에서도 이렇게 에러가 뜨는데 어떻게

해야할까요?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

형종님이 겪고 계신 @SpringBootTest 관련 오류는 Spring Boot 테스트 환경에서 특정 필요한 구성(@SpringBootConfiguration)을 찾을 수 없을 때 발생합니다. 구체적으로, java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test 오류는 테스트 컨텍스트가 애플리케이션의 메인 구성 클래스를 자동으로 찾지 못했음을 나타냅니다.

이 경우, 두 가지 접근 방법이 있습니다:
1. @SpringBootTest 애노테이션에 classes 속성을 지정해 메인 설정 클래스를 수동으로 등록합니다. 예를 들어, 만약 HelloSpringApplication이 메인 구성 클래스라면, 테스트 클래스에 다음과 같이 명시할 수 있습니다:

   @SpringBootTest(classes = HelloSpringApplication.class)
  1. 메인 구성 클래스(@SpringBootApplication이 붙은 클래스)가 테스트 클래스와 같거나 상위 패키지에 위치해야 합니다. 즉, 테스트 클래스가 메인 구성 클래스를 자동으로 찾을 수 있도록 프로젝트 구조를 조정해야 할 수 있습니다.

비슷한 문제를 겪고 계신 분들의 경우를 참고하실 수 있는 몇 가지 링크를 공유드립니다:
- Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=…) with your test
이 경우는 @SpringBootApplication 애노테이션이 적절한 패키지에 위치하지 않은 경우, 이와 유사한 오류에 대한 질문입니다. 질문자는 @SpringBootApplication 애노테이션을 재배치하여 문제를 해결했습니다.

테스트 환경 설정 오류는 다양한 원인으로 발생할 수 있습니다. 따라서 위의 사례와 비교하여, 형종님의 프로젝트 구조, 테스트 클래스 위치, 그리고 @SpringBootConfiguration을 찾기 위한 설정을 점검해보시는 것이 좋습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

형종님의 프로필 이미지

작성한 질문수

질문하기