如果我模拟一个方法来返回某个对象的新实例,我该如何捕获返回的实例?
例如:
when(mock.someMethod(anyString())).thenAnswer(new Answer() {
Object answer(InvocationOnMock invocation) {
Object[] args = invocation.getArguments();
Object mock = invocation.getMock();
return new Foo(args[0])
}
});
Run Code Online (Sandbox Code Playgroud)
显然,我可以有一个Foo类型的字段,answer
并将其设置为新实例,但是有更好的方法吗?像ArgumentCaptor这样的东西?