使用 Mockito 测试非确定性响应
测试与非确定性服务交互的代码时,很难确保结果保持不变方法的返回顺序。例如,考虑测试以下代码,该代码使用 ExecutorCompletionService 来分组和处理任务:
ExecutorCompletionService completionService = new ExecutorCompletionService(service);
for (Callable t : ts)
completionService.submit(request);
for (int i = 0; i 为了解决这一挑战,Mockito 提供了一种方法来配置方法的后续调用以返回不同的对象。通过使用 thenReturn 方法,可以按顺序指定要返回的对象:
when(method-call).thenReturn(value1, value2, value3);
每个值将按顺序返回,一旦所有其他值都用尽,最后一个值将被重复使用。这使您可以测试不同的场景并确保结果保持一致,无论退货顺序如何。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3