Java 模拟具有静态方法的类时发生异常
我正在为静态方法编写单元测试(使用TestNG)。当模拟静态方法的类时,我得到一个异常Java 模拟具有静态方法的类时发生异常,java,unit-testing,mockito,powermock,Java,Unit Testing,Mockito,Powermock,我正在为静态方法编写单元测试(使用TestNG)。当模拟静态方法的类时,我得到一个异常 @RunWith(PowerMockRunner.class) @PrepareForTest(TempClass.class) public class MyTestClass { @Test public void testMethodt() { PowerMockito.mockStatic(TempClass.class); } } public class TempClass
@RunWith(PowerMockRunner.class)
@PrepareForTest(TempClass.class)
public class MyTestClass {
@Test
public void testMethodt() {
PowerMockito.mockStatic(TempClass.class);
}
}
public class TempClass {
public static String getName(String name){
return "Hi " + name;
}
}
当执行PowerMockito.mockStatic(TempClass.class)时代码>我遇到以下异常
org.powermock.api.mockito.ClassNotPreparedException:
[Ljava.lang.Object;@65466a6a
The class com.test.TempClass not prepared for test
对此有何解决方案?通过添加以下内容修复了此问题
@PrepareForTest(TempClass.class)
public class MyTestClass extends PowerMockTestCase {
....
}
注意Java命名约定。类名应该以大写字符开头什么是com.aexitest.data.testClass
?你在使用那个模拟吗?你配置了模拟吗?@Jens,这是一个有静态方法要测试的类。testClass编辑为TempClass@Amad安,你指的是什么配置?提示:所有这些都有很好的文档记录,以前在这里被问过很多次。有时,你只需做一点研究,而不是在这里重复第十次同样的问题,速度就会快得多;-)