使用 Mockito 测试非确定性响应
测试与非确定性服务交互的代码时,很难确保结果保持不变方法的返回顺序。例如,考虑测试以下代码,它使用 ExecutorCompletionService 来分组和处理任务:
<code class="java">ExecutorCompletionService<t> completionService = new ExecutorCompletionService(service); for (Callable<t> t : ts) completionService.submit(request); for (int i = 0; i <p>为了解决这一挑战,Mockito 提供了一种方法来配置方法的后续调用以返回不同的对象。通过使用 thenReturn 方法,您可以指定按顺序返回的对象:</p> <pre class="brush:php;toolbar:false"><code class="java">when(method-call).thenReturn(value1, value2, value3);</code>
每个值将按顺序返回,一旦所有其他值都用完,就会重复使用最后一个值。这使您可以测试不同的场景并确保结果保持一致,无论退货顺序如何。
以上是如何使用 Mockito 测试非确定性响应?的详细内容。更多信息请关注PHP中文网其他相关文章!