230727 JUnit Test 실행 안됨

보트·2023년 7월 27일
0

Spring

목록 보기
23/27

문제

Junit Test 실행 불가능

InitializationError
Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...)
debug org.springframework.boot.test.autoconfigure.jdbc.jdbctestcontextbootstrapper - neither @contextconfiguration nor @contexthierarchy found for test class [jdbctemplatetest]: using springbootcontextloader

원인

  1. Application 패키지 구조와 Test 패키지 구조가 다른 경우
    (application context가 따라가지 못함)

  2. @SpringBootApplication으로 선언된 Class명과 Test Class명이 다른 경우

해결

  1. 패키지 구조를 맞추기

    application configuration 정보가 넘어옴

  2. 테스트 클래스에 아래의 어노테이션 추가

@ContextConfiguration(classes = Application.class)

추가 후

@JdbcTest // Jdbc Slice Test
@ContextConfiguration(classes = Application.class)
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE) // 테스트용 DB 쓰지 않도록
@Rollback(value = false) // Transactional 에 있는 테스트 변경은 기본적으론 롤백 하도록 되어있다.
public class JDBCTemplateTest 

나의 경우는 1번만으로 해결

profile
일주일에 한 번

0개의 댓글