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);
就是这样