admin管理员组

文章数量:1530285

要测试的类:IndexController.java

代码:

@Mock
private TemplateWrapper templateWrapper = spy(new TemplateWrapper());

@InjectMocks
private IndexController controller;

verify(templateWrapper).process();

报错:

Wanted but not invoked:
templateWrapper.process();
-> at com.suning.ebuy.cms.web.controller.IndexControllerTest.testIndexSuccess(IndexControllerTest.java:199)
Actually, there were zero interactions with this mock.

错误原因:没有把templateWrapper注入到IndexController.java类中.

解决方法:

1.把templateWrapper注入到IndexController.java类中

controller.setMyObj(templateWrapper); //it is good to have in @before method

2.或者创建templateWrapper的实例类,再执行verify(templateWrapper).process();

templateWrapper = new TemplateWrapper();

verify(templateWrapper).process();

本文标签: WantedMockitoInvokedmockinteractions