@SpringBootTest vs @RunWith(SpringRunner.class)

이연희·2022년 10월 17일
0

Spring

목록 보기
105/105
post-custom-banner

Junit4에서 사용하는 @RunWith(SpringRunner.class)와 @SpringBootTest의 차이는 무엇일까?

@SpringBootTest 사용시엔 applicatino context를 전부 로딩해서 잘못하면 무거운 프로젝트의 역할을 한다.

하지만 Junit4의 @RunWith(SpringRunner.class)를 사용하면 @Autowired, @MockBean에 해당되는 것만 application context를 로딩하게 돼서 Junit4에서 필요한 조건에 맞춰서 @RunWith(SpringRunner.class)를 사용한다.

그렇다면 @RunWith(SpringRunner.class)의 역할은?

JUnit 테스트 라이브러리를 Spring TestContext Framework와 결합한다. 이를 @RunWith(SpringRunner.class)라고 한다. 즉, 스프링 부트 테스트와 JUnit 사이에 연결자 역할을 한다.

profile
공부기록

0개의 댓글