[Spring] SpringBoot 테스트 시 @WebMvcTest와 @SpringBootTest의 차이

SpringBootTest vs WebMvcTest


1. MockMvc 주입의 차이


SpringBootTest 에는 MockMvc 를 자동으로 주입해주지 않는다. @AutoConfigureMockMvc 어노테이션을 추가해 주입받아야 한다.

@SpringBootTest
**@AutoConfigureMockMvc**
class SpringBootTest {
		@Autowired
		MockMvc mockMvc; // 주입o
}

반면 WebMvcTest 는 별다른 설정을 하지 않아도 MockMvc 가 자동으로 주입된다.

@WebMvcTest
class MvcTest {
		@Autowired
		MockMvc mockMvc; //주입 o
}

2. Bean 등록 범위 차이