>  기사  >  Java  >  Mockito를 사용하여 ExecutorCompletionService에서 비결정적 응답을 모의하는 방법은 무엇입니까?

Mockito를 사용하여 ExecutorCompletionService에서 비결정적 응답을 모의하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-01 02:46:28351검색

How to Mock Nondeterministic Responses in ExecutorCompletionService with Mockito?

Mockito를 사용하여 ExecutorCompletionService의 비결정적 응답 모의

작업이 비결정적 값을 반환할 때 ExecutorCompletionService의 동작을 테스트하는 것은 어려울 수 있습니다. 그러나 Mockito는 이러한 시나리오를 시뮬레이션하는 솔루션을 제공합니다.

이 상황에서는 Mockito의 thenReturn 메서드를 사용하여 스텁 메서드에 대한 여러 반환 값을 지정할 수 있습니다. 이를 통해 값이 반환되는 순서를 제어하여 실행 순서에 관계없이 결과가 일관되게 유지되도록 할 수 있습니다.

이를 달성하려면 스텁 메서드 호출과 반환할 값 목록을 지정하기만 하면 됩니다. 순서대로. 예:

when(completionService.take().get()).thenReturn(value1, value2, value3);

이 예에서는 take()가 처음 호출될 때 value1이 반환되고, 두 번째 호출에서는 value2가 반환되는 식입니다. 모든 값이 반환되면 후속 호출에 대해 value3이 반복적으로 반환됩니다.

이 기술을 활용하면 비결정적 작업 결과를 처리할 때 코드의 동작을 테스트하여 관계없이 원하는 결과가 달성되는지 확인할 수 있습니다. 작업이 완료되는 순서입니다.

위 내용은 Mockito를 사용하여 ExecutorCompletionService에서 비결정적 응답을 모의하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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