[java] Mockito를 사용하여 모의 객체의 행동을 정의하는 방법

Mockito는 자바에서 사용되는 모의 객체를 손쉽게 생성하고 설정할 수 있게 해주는 테스트 라이브러리입니다. 이 라이브러리를 사용하여 모의 객체의 특정 행동을 정의할 수 있습니다. 아래에서는 Mockito를 사용하여 모의 객체의 행동을 정의하는 방법에 대해 알아보겠습니다.

Mockito 모의 객체 생성하기

먼저 Mockito를 사용하여 모의 객체를 생성해야 합니다. 이를 위해서는 Mockito.mock() 메서드를 사용합니다.

예를 들어, UserService 라는 인터페이스를 모의 객체로 생성하려면 다음과 같이 작성할 수 있습니다.

UserService userService = Mockito.mock(UserService.class);

모의 객체의 행동 정의하기

모의 객체를 생성한 후에는 해당 객체의 특정 메서드가 호출됐을 때 어떻게 동작해야 하는지 정의할 수 있습니다. 이를 위해서는 Mockito.when().thenReturn() 메서드를 사용합니다.

예를 들어, getUserById() 메서드가 특정한 사용자 ID에 대한 사용자 정보를 반환해야 한다면, 다음과 같이 모의 객체의 행동을 정의할 수 있습니다.

User mockUser = new User("12345", "John Doe");
Mockito.when(userService.getUserById("12345")).thenReturn(mockUser);

위의 코드에서 getUserById() 메서드가 “12345”라는 ID에 대한 사용자 정보를 반환하도록 모의 객체의 행동을 정의했습니다.

마무리

이제 Mockito를 사용하여 모의 객체의 특정 행동을 정의하는 방법에 대해 알아보았습니다. 이를 통해 테스트 시나리오에 맞게 모의 객체를 설정하여 원하는 동작을 테스트할 수 있습니다.

더 많은 Mockito의 기능 및 활용법은 Mockito 공식 홈페이지에서 확인하실 수 있습니다.