>  기사  >  Java  >  Java의 모의 메서드에서 인수를 다시 전달하는 방법은 무엇입니까?

Java의 모의 메서드에서 인수를 다시 전달하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-24 05:05:30646검색

How to Pass Arguments Back from Mocked Methods in Java?

모의 메서드에서 전달된 인수 반환

특정 시나리오에서는 모의 메서드가 전달된 것과 동일한 인수를 반환하는 것이 바람직할 수 있습니다. 그것에. 잘 알려진 Java용 모킹 프레임워크인 Mockito는 이 동작을 달성하기 위한 다양한 접근 방식을 제공합니다.

Java 8이 포함된 Mockito 1.9.5

람다 표현식을 활용하면 다음과 같은 작업을 수행할 수 있습니다. 이제 동작을 간결하게 정의하십시오.

<code class="java">when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);</code>

이전 Mockito 버전

또는 이전 버전의 Mockito의 경우 사용자 정의 답변을 만들 수 있습니다.

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

이 Answer 구현은 호출에서 첫 번째 인수를 검색하고 이를 반환하여 모의 메서드에 전달된 동일한 문자열을 효과적으로 다시 전달합니다.

위 내용은 Java의 모의 메서드에서 인수를 다시 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.