我正在尝试使用Mockito测试一些遗留代码
我想将生产中使用的FooDao存根如下:
foo=fooDao.getBar(new Bazoo());
我可以写:
何时(fooDao.getBar(new Bazoo())。然后返回(myFoo);
但明显的问题是,getBar()。(诅咒那个新的操作员!)
如果我能以一种不管参数如何都返回myFoo的方式来存根该方法,我会非常喜欢它。如果做不到这一点,我将听取其他解决方案建议,但我真的希望在有合理的测试覆盖率之前避免更改生产代码
什么时候(
fooDao.getBar(
任何(Bazoo.class)
)
).然后返回(myFoo);
或者(为了避免nulls):
什么时候(
fooDao.getBar(
(Bazoo)notNull()
)
).然后返回(myFoo);
别忘了导入匹配器(还有许多其他匹配器):
对于Mockito 2.1.0及更新版本:
导入静态org.mockito.ArgumentMatchers.*;
对于旧版本:
导入静态org.mockito.Matchers.*;