我在执行模拟时遇到问题,当我将其作为静态类运行时,它会抛出错误
public class UtilClass {
private UtilClass() throws InstantiationException {
// should never be called.
throw new InstantiationException("Instances of UtilClassare forbidden.");
}
public static void getData() {
sysout("Testing");
}
}
测试用例:
@RunWith(PowerMockRunner.class)
@PrepareForTest(UtilClass.class)
public class UtilTest{
@InjectMocks
private UtilClass objectUnderTest;
@Before
public void preTest()
throws Exception {
PowerMockito.mockStatic(UtilClass.class);
MockitoAnnotations.initMocks(this);
}
@Test
public void testGetData() {
//assert statements
}
}
引起:org.mockito.exceptions.base.MockitoException: 无法实例化名为' objectUnderTest'的@InjectMocks字段。类型'类UtilClass'。 您还没有在字段声明中提供实例,因此我尝试构造实例。 但是构造函数或初始化块引发了异常:禁止使用UtilClass实例。