>  기사  >  Java  >  Mockito 및 다중 메서드 호출을 사용하여 불확정 응답을 테스트하는 방법은 무엇입니까?

Mockito 및 다중 메서드 호출을 사용하여 불확정 응답을 테스트하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-29 00:31:30434검색

 How to Test Nondeterminate Responses with Mockito and Multiple Method Invocations?

Mockito 및 다중 메서드 호출을 사용하여 불확정 응답 테스트

스텁 메서드가 동일한 인수를 사용하여 여러 호출에 대해 서로 다른 개체를 반환하는 테스트 시나리오에서 , 반품 순서에 관계없이 일관된 결과를 보장하는 것이 필수적입니다. 이를 달성하기 위해 Mockito는 우아한 솔루션을 제공합니다.

예를 들어, ExecutorCompletionService가 작업을 그룹화하고 처리하는 데 사용되는 다음 테스트 시나리오를 고려해보세요. 목표는 작업 완료 순서에 관계없이 결과가 일정하게 유지되는지 확인하는 것입니다.

<code class="java">// ExecutorCompletionService completionService = new ExecutorCompletionService(service);
// for (Callable<T> t : ts) completionService.submit(request);</code>

완료 서비스의 불확정 응답을 테스트하려면 다음과 같이 Mockito의 thenReturn 메서드를 활용할 수 있습니다.

<code class="java">when(completionService.take().get()).thenReturn(value1, value2, value3);</code>

thenReturn 메서드를 사용하면 여러 반환 값을 인수로 지정할 수 있으므로 스텁 메서드가 지정된 순서로 원하는 개체를 반환하도록 할 수 있습니다. 첫 번째 호출에서는 첫 번째 값이 반환되고, 그 다음에는 두 번째 값이 반환됩니다. 모든 값이 소진되면 마지막 값이 반복적으로 반환됩니다.

이 접근 방식을 통해 개발자는 메서드 호출 순서나 반환된 개체 순서가 예상 결과에 영향을 주지 않는 다양한 시나리오를 테스트할 수 있습니다. 이는 테스트를 단순화하고 불확실한 상황에서도 코드가 강력하고 안정적임을 보장합니다.

위 내용은 Mockito 및 다중 메서드 호출을 사용하여 불확정 응답을 테스트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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