永发信息网

Mockito怎么样Mock返回值为空的方法

答案:1  悬赏:20  手机版
解决时间 2021-11-09 20:30
Mockito怎么样Mock返回值为空的方法
最佳答案
Mockito怎么样Mock返回值为空的方法?

Mockito这个类是很轻松mock带有返回值的方法。

但是当遇到没有返回值的方法时,就非常的麻烦了。
下面提出解决方法:

Java代码
public class People{
public void sayHello(String str){
System.out.println(str);
}
}

People mockPeople =Mockito.mock(People.class);
Mockito.doAnswer(new Answer() {
public Object answer(InvocationOnMock invocation) {
Object[] args = invocation.getArguments();
return "called with arguments: " + args;
}
}).when(mockPeople).sayHello("Hello");

当mock方法的时候,有的时候要mock掉对参数没太确定的时候用下面的方法:

foo = fooDao.getBar(new Bazoo());

when(fooDao.getBar(new Bazoo())).thenReturn(myFoo);

when(
fooDao.getBar(
any(Bazoo.class)
)
).thenReturn(myFoo);

or (to avoid nulls):
when(
fooDao.getBar(
(Bazoo)notNull()
)
).thenReturn(myFoo);

就是这样
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯