模拟具有静态方法的类时发生异常

时间:2019-05-24 09:32:15

标签: 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 {

  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

有什么解决办法吗?

1 个答案:

答案 0 :(得分:1)

通过添加以下内容解决了该问题

@PrepareForTest(TempClass.class)
public class MyTestClass extends PowerMockTestCase {
   ....
}