728x90
반응형
스프링 프로젝트 테스트를 진행하다보면 RunWith(SpringRunner.class)를 테스트 클래스에 설정해주는 모습을 볼 수 있습니다.
하지만, 현재 JUnit5를 사용하고 있다면 RunWith를 할 수 없을 것입니다. 그 이유에 대해 궁금해서 찾아본걸 정리해봤습니다.
RunWith란?
JUnit 프레임워크의 테스트 실행방법을 확장할 때 사용하는 어노테이션
즉, ApplicationContext를 만들고 관리하는 작업을 @RunWith(SpringRunner.class)에 설정된 class로 이용하겠다는 뜻입니다.
JUnit5에서 RunWith를 사용 할 수 없는 이유
JUnit5로 넘어오면서 @RunWith는 @ExtendWith로 변환하게 되었습니다.
@RunWith(SpringRunner.class) => @ExtendWith(SpringExtension.class)
만약 @SpringBootTest를 설정하셨다면, cmd(control) + @SpringBootTest클릭으로 다음과 같이 이미 SpringBootTest에 적용이 되어 있기 때문에 @SpringBootTest를 이용한다면 생략할 수 있음을 알 수 있습니다.
반응형
'Spring > JUnit & Test' 카테고리의 다른 글
[Mock과 Mocktio] @Mock @MockBean (0) | 2022.12.15 |
---|---|
[Test] DataJpaTest에서 MySQL 설정 (0) | 2022.12.02 |
[Mock과 Mocktio] @InjectMocks (0) | 2021.04.11 |
[Mock과 Mocktio] @Spy @SpyBean (0) | 2021.04.11 |
[JUnit4 vs JUnit5] @Test(expected=...) (0) | 2021.04.02 |