[java] Mockito를 사용하여 특정 메소드를 호출하면 다른 메소드도 반복해서 호출되는지 확인하는 방법은?
다음은 Mockito를 사용하여 메소드 호출을 추적하고 확인하는 예제 코드입니다.
import org.mockito.Mockito;
// 테스트할 클래스
public class MyClass {
public void method1() {
method2();
}
public void method2() {
// 이 메소드를 테스트하고 싶다면?
}
}
// 테스트 클래스
public class MyClassTest {
@Test
public void testMethod1() {
// Mock 객체 생성
MyClass myClass = Mockito.mock(MyClass.class);
// method1을 호출하면 method2도 호출되는지 확인
myClass.method1();
// method2 메소드가 한 번 호출되었는지 확인
Mockito.verify(myClass, Mockito.times(1)).method2();
}
}
위의 예제 코드에서는 MyClass
를 테스트하고 싶은 경우 MyClass
의 Mock 객체를 생성하여 사용합니다. 그리고 method1
을 호출하면 method2
도 호출되는지 확인하기 위해 verify
메소드를 사용합니다. verfiy
메소드는 myClass
객체의 method2
가 한 번 호출되었는지를 확인합니다.
Mockito는 테스트 더블에 대한 다양한 기능을 제공하므로 자세한 내용은 Mockito의 공식 문서를 참조하시기 바랍니다.
참고 문서: Mockito 공식 문서