"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Java에서 수신된 인수를 반환하기 위해 모의 메서드를 만드는 방법은 무엇입니까?

Java에서 수신된 인수를 반환하기 위해 모의 메서드를 만드는 방법은 무엇입니까?

2024년 11월 16일에 게시됨
검색:133

How to Mock Methods to Return Arguments Received in Java?

수신된 인수를 반환하는 모의 방법

객체 지향 프로그래밍에서는 Mockito와 같은 모의 프레임워크를 사용하여 시뮬레이션하는 모의 객체를 생성합니다. 테스트 목적으로 실제 객체의 동작. 테스트의 일반적인 시나리오 중 하나는 모의 메서드가 전달된 것과 동일한 인수를 반환하도록 해야 한다는 것입니다.

Mockito 및 Lambda 표현식(Mockito 1.9.5 및 Java 8)

Java 8 이상과 함께 Mockito 1.9.5 이상 버전의 경우 람다 표현식을 활용하여 이 동작을 달성할 수 있습니다:

when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);

여기서 i는 InvocationOnMock의 인스턴스를 나타내고, getArguments()[0]는 모의 메서드에 전달된 첫 번째 인수를 검색합니다.

Mockito 및 사용자 정의 답변(이전 버전)

이전 버전의 Mockito의 경우 사용자 정의 Mockito 답변 구현을 사용할 수 있습니다.

MyInterface mock = mock(MyInterface.class);
when(mock.myFunction(anyString())).thenAnswer(new Answer() {
    @Override
    public String answer(InvocationOnMock invocation) throws Throwable {
        Object[] args = invocation.getArguments();
        return (String) args[0];
    }
});

이 사용자 정의 답변은 전달된 인수를 검색하고 반환하여 모의 메서드가 수신된 입력을 에코할 수 있도록 합니다.

릴리스 선언문 이 글은 1729677594에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3