後続の呼び出しでスタブ化されたメソッドが異なるオブジェクトを返す方法はありますか?これを実行して、からの不確定な応答をテストしExecutorCompletionService
ます。つまり、メソッドの戻り順序に関係なくそれをテストするために、結果は一定のままです。
テストしようとしているコードは次のようになります。
// Create an completion service so we can group these tasks together
ExecutorCompletionService<T> completionService =
new ExecutorCompletionService<T>(service);
// Add all these tasks to the completion service
for (Callable<T> t : ts)
completionService.submit(request);
// As an when each call finished, add it to the response set.
for (int i = 0; i < calls.size(); i ++) {
try {
T t = completionService.take().get();
// do some stuff that I want to test
} catch (...) { }
}