[java] Mockito를 사용하여 리턴 값이 null인 메소드도 모킹하는 방법은?
Mockito는 자바에서 유닛 테스트 작성을 도와주는 인기있는 도구입니다. 특히 Mockito를 사용하면 메소드의 동작을 가짜 객체로 대체하여 테스트할 수 있습니다. 하지만 가끔 가짜 메소드의 리턴 값이 null인 경우에 대한 모킹이 필요할 수 있습니다. 이 글에서는 Mockito를 사용하여 리턴 값이 null인 메소드도 모킹하는 방법에 대해 설명하겠습니다.
예시 코드
다음은 리턴 값이 null인 메소드를 가진 클래스인 MyClass
의 예시입니다.
public class MyClass {
public String myMethod() {
return null;
}
}
이제 Mockito를 사용하여 myMethod()
를 모킹하고 리턴 값이 null이 되도록 만들어 보겠습니다.
import org.junit.Test;
import org.mockito.Mockito;
public class MyClassTest {
@Test
public void testMyMethod() {
// 가짜 객체 생성
MyClass myClassMock = Mockito.mock(MyClass.class);
// 모킹 설정
Mockito.when(myClassMock.myMethod()).thenReturn(null);
// 테스트
String result = myClassMock.myMethod();
// 검증
assertThat(result).isNull();
}
}
설명
위의 예시 코드에서 MyClass
를 모킹하기 위해 Mockito의 mock()
메소드를 사용하여 myClassMock
객체를 생성합니다. 그런 다음 when()
메소드를 사용하여 myMethod()
를 모킹하고 리턴 값을 null
로 설정합니다. 이렇게 설정된 가짜 메소드를 호출하고 결과로 null
이 반환되는지 검증합니다.
결론
이렇게 Mockito를 사용하여 리턴 값이 null인 메소드를 모킹할 수 있습니다. Mockito를 사용하면 자바 유닛 테스트 작성 시 유연하고 강력한 모킹 기능을 사용할 수 있으므로, 테스트 커버리지를 높이고 안정적인 코드를 작성할 수 있습니다.
참고 문서: Mockito 공식 문서