객체 지향 프로그래밍에서는 Mockito와 같은 모의 프레임워크를 사용하여 시뮬레이션하는 모의 객체를 생성합니다. 테스트 목적으로 실제 객체의 동작. 테스트의 일반적인 시나리오 중 하나는 모의 메서드가 전달된 것과 동일한 인수를 반환하도록 해야 한다는 것입니다.
Java 8 이상과 함께 Mockito 1.9.5 이상 버전의 경우 람다 표현식을 활용하여 이 동작을 달성할 수 있습니다:
when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);
여기서 i는 InvocationOnMock의 인스턴스를 나타내고, getArguments()[0]는 모의 메서드에 전달된 첫 번째 인수를 검색합니다.
이전 버전의 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];
}
});
이 사용자 정의 답변은 전달된 인수를 검색하고 반환하여 모의 메서드가 수신된 입력을 에코할 수 있도록 합니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3