Mockito与匹配器衔接

时间:2014-05-22 14:36:15

标签: java unit-testing mockito stubbing

我试图在我的测试中存储一个间谍方法,如

AnotherClass anotherClass = mock(AnotherClass.class);
doReturn(any(MyClass.class)).when(mySpy).myMethod(anotherClass);

因此mockito会抛出InvalidUseOfMatchersException

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: 
Misplaced argument matcher detected here:

-> at mypackage.MyTest.testMyMethod(MyTest.java:50)

任何人都可以解释错误吗?

1 个答案:

答案 0 :(得分:2)

我认为你不理解doReturn的使用。你不应该试图匹配返回的内容。你在做什么告诉Mockito要归还什么。见下文

AnotherClass anotherClass = mock(AnotherClass.class);
doReturn(new MyClass()).when(mySpy).myMethod(anotherClass);