MockMvc?

@SpringBootTest

@SpringBootTest
@AutoConfigureMockMvc //SpringBootTest에서는 MockMvc 객체를 사용하려면 해당 어노테이션 선언 필요
class SpringBootTest {

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

    @Autowired
    MockMvc mockMvc; // 주입 O

    @Autowired
    UserController userController; // 주입 O

    @Autowired
    UserRepository userRepository; // 주입 O

    @Autowired
    UserService userService; // 주입 O
}

@WebMvcTest

@WebMvcTest
class SpringBootTest {

		@Autowired
		MockMvc mockMvc; // 주입 O

		@Autowired
		UserController userController; // 주입 O

		//@Autowired
		@MockBean
		UserRepository userRepository; // 주입 X

		//@Autowired
		@MockBean
		UserService userService; // 주입 X
}

image.png

Java 단위의 Unit Test (단위 테스트)