@InjectMocks和@Spy一起给出了RuntimeException

时间:2017-11-02 09:54:44

标签: java unit-testing mockito powermock spy

我在课堂上有两个方法。我想测试只隔离其中一个。

所以我在'间谍'调用第二种方法:

@Spy @InjectMocks private Manager manager;
//...
doReturn(obj).when(manager).method2(any());

我在这里得到RuntimeException

Caused by: org.mockito.exceptions.base.MockitoException: Cannot create a @Spy for 'manager' field because the *instance* is missing 

这里有什么问题?

1 个答案:

答案 0 :(得分:0)

首先,@ Spy可以与@InjectMocks一起使用。

第二,我也遇到了这个问题。修改后 @RunWith(PowerMockRunner.class)
@RunWith(MockitoJUnitRunner.class),我解决了。