[java] Mockito를 사용하여 메소드 호출 시 특정 값이 매개변수로 전달되는지 확인하는 방법은?
import static org.mockito.Mockito.*;

// ...

@Test
public void testMethodCallWithSpecificArgument() {
    // 모의 객체 생성
    MyClass myObject = mock(MyClass.class);
    
    // 메소드 호출 시 특정 값이 매개변수로 전달되는지 확인
    myObject.myMethod("specificArgument");
    
    // verify를 사용하여 메소드 호출 및 매개변수 확인
    verify(myObject).myMethod(eq("specificArgument"));
}

위의 예제에서는 MyClass라는 클래스의 myMethod 메소드가 호출될 때 “specificArgument”라는 값이 매개변수로 전달되는지 확인하는 방법을 보여주고 있습니다.

mock 메소드를 사용하여 모의 객체를 생성한 후, myObject 객체의 myMethod 메소드를 호출합니다. 그리고 verify 메소드를 사용하여 해당 메소드 호출과 매개변수를 확인합니다. eq 메소드를 사용하여 값을 비교할 때는 equals 메소드가 호출되도록 합니다.

이를 통해 Mockito를 사용하여 메소드 호출 시 특정 값이 매개변수로 전달되는지 확인할 수 있습니다.

참고 문헌: