→ 실제 객체를 흉내 내는 가짜 객체이다.
예를 들어 VetService가 VetRepository를 사용할 때 실제 구현체를 만들어서 사용하는 것이 아니라 가짜 VetRepository를 만들어서 테스트할 때 사용하는 것이다.
@ExtendWith(MockitoExtension.class) 애노테이션을 달아준다.
@ExtendWith(MockitoExtension.class)
class VetServiceTest {
}
Mock 가짜 객체를 생성할 때는 @Mock 애노테이션을 사용한다.
즉 의존성하려는 객체에다가 달아주면 된다.
@Mock
private VetRepository vetRepository;
Mock 객체를 자동으로 주입받는 실제 테스트 대상을 지정해주는 것이다.
즉, 테스트할 객체 대상에다가 달아준다
@InjectMocks
private VetService vetService;
when().thenReturn(): 반환값을 지정한다.