2011-11-01 29 views
0

当使用Mockito.when时,是否可以获取/存储使用哪些参数?是否可以“取”通过Mockito.when使用的参数?

例如这个伪代码:

Mockito.when(mock.someMethod(**any string**)).thenReturn(print(** any string **)); 

打印将是:

public void print(String s) { 
    System.out.println(s); 
} 

哪位能像这样被使用:

Person mockPerson = ... 

mockPerson.setName("John"); 

这将触发 '约翰' 将被打印出来。

也许是一个蹩脚的例子,但我想“存储”/“使用”模拟方法将被调用的任何参数。

后续问题:如果没有,其他测试框架可以做到这一点。

回答

2

ArgumentCaptor文档可能会对你有用。

+0

ArgumentCaptor将允许您捕捉要验证后的价值,但不会让你作用于返回语句中的值。 原始问题想要立即用捕获的值做一些事情,而不仅仅是验证它的价值。 – Mikezx6r

相关问题