Java mockito不验证是否调用了我的方法
在我的测试类中有以下两个语句Java mockito不验证是否调用了我的方法,java,mockito,junit4,Java,Mockito,Junit4,在我的测试类中有以下两个语句 Mockito.verify(customvalueProcessorFactory, times(1)).get(customvalueKey, userId); when(customvalueProcessorFactory.get(customvalueKey, userId)).thenReturn(customvalueProcessor); 第二个可以正常工作并返回传递的值,稍后我将在测试中使用该值。但第一个错误会引发如下错误: -&
Mockito.verify(customvalueProcessorFactory, times(1)).get(customvalueKey, userId);
when(customvalueProcessorFactory.get(customvalueKey, userId)).thenReturn(customvalueProcessor);
第二个可以正常工作并返回传递的值,稍后我将在测试中使用该值。但第一个错误会引发如下错误:
-> at <my-path>.MessageProcessorUnitTest.expectCustomvalueProcessorFactoryGetCalledWillReturn(MessageProcessorUnitTest.java:194)
Actually, there were zero interactions with this mock.
->at.MessageProcessorUnitTest.expectCustomvalueProcessorFactoryGetCalledWillReturn(MessageProcessorUnitTest.java:194)
实际上,与这个模拟没有任何交互。
可能有什么问题?mockito中的一般使用模式是:
when(mock.doSomething()).then ...
doTheThingYouAreTesting();
verify(mock).doSomething();
您似乎先进行了验证。尝试更改代码以遵循上述模式。mockito中的一般使用模式是:
when(mock.doSomething()).then ...
doTheThingYouAreTesting();
verify(mock).doSomething();
您似乎先进行了验证。尝试按照上述模式更改代码。发生后验证对customvalueProcessorFactory.get(customvalueKey,userId)的实际调用发生在哪里?你能发布整个方法吗?请在它发生后发布。对customvalueProcessorFactory.get(customvalueKey,userId)的实际调用发生在哪里?你能把整个方法贴出来吗