使用Mockito对具有相同参数的同一方法进行多次调用

有没有办法让存根方法在后续调用时返回不同的对象?我想这样做是为了测试来自ExecutorCompletionService的不确定响应。i、 e.测试结果是否保持不变,与方法的返回顺序无关

我要测试的代码是这样的

//创建一个完成服务,以便我们可以将这些任务分组在一起
ExecutorCompletionService<T>完成服务=
新ExecutorCompletionService<T>(服务);
//将所有这些任务添加到完成服务
对于(可调用<T>T:ts)
完成服务。提交(请求);
//当每次调用完成时,将其添加到响应集中。
对于(int i=0;i<calls.size();i++){
试一试{
T=completionService.take().get();
//做一些我想测试的东西
}捕获(…){}
}

怎么样

何时(方法调用)。然后返回(值1、值2、值3);

只要参数类型正确,就可以在return的括号中放入任意数量的参数。第一次调用方法时将返回第一个值,然后返回第二个答案,依此类推。最后一个值将在所有其他值用完后重复返回

发表评论