[java] Mockito를 사용하여 특정 메소드를 호출하면 다른 메소드도 함께 호출되지 않도록 하는 방법은?
Mockito는 자바에서 유닛 테스트를 작성할 때 매우 유용한 도구입니다. 특정 메소드가 호출되었을 때 다른 메소드가 함께 호출되지 않도록 하려면 Mockito의 verify
메소드와 never
메소드를 사용할 수 있습니다.
아래는 이러한 동작을 보여주는 예제입니다.
import org.junit.Test;
import org.mockito.Mockito;
public class ExampleTest {
@Test
public void testMethod() {
// Mock 객체 생성
Example example = Mockito.mock(Example.class);
// 특정 메소드 호출
example.method1();
// 특정 메소드가 호출되었는지 검증
Mockito.verify(example).method1();
// 다른 메소드가 호출되지 않았는지 검증
Mockito.verify(example, Mockito.never()).method2();
}
}
위의 예제에서는 Example
클래스의 method1
을 호출한 후에 method2
가 호출되지 않은 것을 검증하고 있습니다. verify
메소드를 사용하여 method1
이 호출됐는지 확인하고, never
메소드를 사용하여 method2
가 호출되지 않았음을 검증합니다.
이렇게 Mockito를 사용하여 특정 메소드를 호출하면 다른 메소드도 함께 호출되지 않도록 할 수 있습니다. 다만, 주의해야 할 점은 Mock 객체를 생성하여 테스트하기 때문에 클래스 내부의 실제 로직은 실행되지 않는다는 것입니다.
Mockito에 대한 더 자세한 정보는 공식 Mockito 홈페이지를 참조하시기 바랍니다.