Mockito는 자바를 이용하여 단위 테스트할 때 모의 객체를 만들고 관리하는데 도움을 주는 인기있는 모의 라이브러리입니다. 모의 객체를 사용하면 외부 의존성을 피하고 코드를 격리시켜 테스트할 수 있습니다.
Mockito 모의 객체 생성하기
Mockito를 사용하여 모의 객체를 만들기 위해서는 Mockito.mock()
메서드를 사용합니다. 예를 들어, UserService
클래스의 모의 객체를 만들어보겠습니다.
UserService userServiceMock = Mockito.mock(UserService.class);
위의 예제에서는 UserService
클래스의 모의 객체를 userServiceMock
변수에 할당했습니다. 이제 userServiceMock
를 사용하여 UserService
클래스의 메서드를 호출하고 메서드가 예상대로 동작하는지 확인할 수 있습니다.
모의 객체의 동작 지정하기
모의 객체의 동작을 지정하려면 Mockito.when().thenReturn()
메서드를 사용합니다. 예를 들어, getUserCount
메서드를 호출했을 때 10을 반환하도록 모의 객체의 동작을 지정하는 방법은 다음과 같습니다.
Mockito.when(userServiceMock.getUserCount()).thenReturn(10);
위의 예제에서는 getUserCount
메서드가 호출될 때 10을 반환하도록 지정했습니다.
모의 객체의 행동 검증하기
모의 객체를 사용하여 메서드를 호출한 후, 모의 객체의 메서드 호출 여부 및 호출 횟수를 검증할 수 있습니다. 예를 들어, getUserCount
메서드가 정확히 한 번 호출되었는지 검증하는 방법은 다음과 같습니다.
Mockito.verify(userServiceMock, Mockito.times(1)).getUserCount();
위의 예제에서는 getUserCount
메서드가 정확히 한 번 호출되었는지를 확인했습니다.
결론
Mockito를 사용하여 모의 객체를 생성하고 관리하는 방법을 살펴보았습니다. 모의 객체는 단위 테스트를 작성할 때 외부 의존성을 제어하고 코드를 격리시키는 데 유용합니다. Mockito를 사용하면 효과적으로 단위 테스트를 작성할 수 있으며, 모의 객체를 통해 코드의 동작을 확인하고 검증할 수 있습니다.
더 많은 정보는 Mockito 공식 웹사이트(https://site.mockito.org/)에서 확인할 수 있습니다.