@InjectMocks 和 @Spy 一起给出 RuntimeException

问题描述 投票:0回答:2

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

所以我正在“监视”第二种方法的调用:

@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 

这里出了什么问题?

java unit-testing mockito powermock spy
2个回答
1
投票

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

其次,我也遇到这个问题。修改时

@RunWith(PowerMockRunner.class)

@RunWith(MockitoJUnitRunner.class)
,我解决了。


0
投票

正确的使用方法是将其用作 @间谍 列表列表 = new ArrayList<>()

© www.soinside.com 2019 - 2024. All rights reserved.