Mockito:'thenReturn()'和'thenAnswer()'有什么区别?



我可以调用方法并应用逻辑,

例子
thenAnswer(val -> {
//logic
return newValue;
});

thenReturn(callMethod1(obj));
obj callMethod1(obj){
//Logic
return obj;
}```

thenReturn()需要返回一个对象,而thenAnswer()需要类实现接口的对象。
所以,如果你需要返回一个固定的值,正确的方法是使用thenReturn(),但是如果你需要对你返回的对象做一些操作,那么你应该使用thenAnswer(),它将调用一个Answer实例。
在简历中,这只是一个执行的问题,选择一个或另一个只是取决于你的目的。

thenReturn,顾名思义,只是在模拟条件发生时返回一些值。

thenAnswer调用Answer实例的answer方法,并允许您在条件发生时执行一些任意代码。

相关内容

  • 没有找到相关文章

最新更新