ホームページ >Java >&#&チュートリアル >Mockito を使用して非決定的な応答をテストするにはどうすればよいですか?
Mockito を使用した非決定的応答のテスト
非決定的サービスと対話するコードをテストする場合、結果が常に一定であることを保証するのが難しい場合があります。メソッドの戻り順序。たとえば、ExecutorCompletionService を使用してタスクをグループ化し、処理する次のコードをテストすることを検討してください。
<code class="java">ExecutorCompletionService<T> completionService = new ExecutorCompletionService<>(service); for (Callable<T> t : ts) completionService.submit(request); for (int i = 0; i < calls.size(); i ++) { try { T t = completionService.take().get(); // do some stuff that I want to test } catch (...) { } }</code>
この課題に対処するために、Mockito は、メソッドの後続の呼び出しが異なるオブジェクトを返すように構成する手段を提供します。 thenReturn メソッドを使用すると、次の順序で返されるオブジェクトを指定できます。
<code class="java">when(method-call).thenReturn(value1, value2, value3);</code>
各値は順番に返され、他の値がすべて使い果たされると最後の値が繰り返し使用されます。これにより、さまざまなシナリオをテストし、返品順序に関係なく結果が一貫していることを確認できます。
以上がMockito を使用して非決定的な応答をテストするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。