如何测试Java中静态方法的调用次数?

时间:2016-03-15 08:32:01

标签: java unit-testing mockito powermockito

我有一个methodA()的类,最终调用一个返回String的静态methodB()methodA()可能导致methodB()的多次调用,具体取决于方案。

我想编写一个单元测试来验证methodA()的单个调用只会导致单个调用methodB()

如何做到这一点?我查看了PowerMockito,但未能找到合适的例子。

class classA {
   public int methodA() {
      // Do something that invokes a method that in turn calls B.methodB()
   }
}

class classB {
   public static String methodB(String str) {
      // Do something
   }
}

1 个答案:

答案 0 :(得分:0)

验证静态方法调用Mockito是不够的。您需要使用PowerMockito

在将PowerMockito添加到项目之前,我建议您考虑更改静态方法并使用带有实例方法的单例。

请参阅:How to verify static void method has been called with power mockito