Projects/[Spring] Ticketing App Project

[Test] Mock과 MockBean은 뭐가 다른 걸까?

montmer27 2026. 3. 16. 20:37
요약
@Mock은 Spring Context가 없어도 동작하지만, @MockBean은 Spring Context가 띄워져 있어야 실행 가능하다.
따라서 @SpringBootTest가 없는 순수 단위 테스트에는 @MockBean보다 @Mock을 사용하는 것이 더 적합하다.
구분 @Mock @MockBean
공통점 가짜 빈을 주입해야 하는 경우 사용
소속 Mockito Spring Boot Test
동작 조건 MockitoExtension / MockitoAnnotations.openMocks() Spring ApplicationContext 필요
사용 시기 순수 단위 테스트에서 (@InjectMocks와 함께 사용) 전체 컨텍스트를 띄우는 테스트에서
@InjectMocks와 연동 ✅  ❌ 

 

주문하신 테스트코드 나왔습니다