我在编写Junit测试用例时遇到了一个问题,而且对Mockito比较陌生。
我正在mock一个类的函数,而这个函数的返回类型恰好是void。当从我的mock类中调用该函数时,据我理解(和调试经验),它不会调用原始函数。为了克服这个问题,我尝试使用"when"和"thenCallRealMethod()"。
when(instance.voidFunction()).thenCallRealMethod();
“voidFunction”充满了我不想触发的逻辑。我已经提取出这些内容到“when”语句中以避免这种情况。我阅读到应该使用 doReturn().when().voidFunction()
格式,然而这样做不会调用真实方法。
据我所知,在这里我不能使用Spy,因为我不希望在“when”语句之前调用“voidFunction()”。任何帮助都将不胜感激。如果这是一个非常简单的解决方案,我很抱歉,因为尽管阅读了很多,但我对mockito的理解并不是很好。谢谢!