[java] Mockito를 사용하여 원본 객체의 메소드 호출을 유지하는 방법은?
다음은 Mockito를 사용하여 원본 객체의 메소드 호출을 유지하는 예제입니다.
import static org.mockito.Mockito.*;
@RunWith(MockitoJUnitRunner.class)
public class ExampleTest {
@Mock
private SomeObject someObject;
@Test
public void testSomeMethod() {
// 원본 객체의 메소드 호출 유지
when(someObject.someMethod()).thenCallRealMethod();
// 실제 메소드 호출
String result = someObject.someMethod();
// 결과 확인
assertEquals("Expected result", result);
}
}
위의 예제에서 someObject
는 SomeObject
클래스의 인스턴스입니다. someMethod()
는 SomeObject
클래스에 정의된 메소드입니다. when(someObject.someMethod()).thenCallRealMethod()
를 통해 메소드 호출을 유지하도록 지정합니다.
이렇게 하면 someObject.someMethod()
가 호출될 때 실제 SomeObject
클래스의 someMethod()
가 실행됩니다. 따라서 예제에서는 “Expected result”라는 결과를 반환하는 것을 확인할 수 있습니다.
추가로, @RunWith(MockitoJUnitRunner.class)
어노테이션을 사용하여 테스트 클래스에서 Mockito를 사용할 수 있도록 설정합니다.
위의 예제는 Java를 기반으로 작성된 Mockito의 간단한 사용 예시입니다. Mockito에 대한 자세한 내용은 Mockito의 공식 문서를 참고하시기 바랍니다.
참고 문서: Mockito 공식 문서