使用mockito跳过静态方法调用

时间:2013-03-08 10:26:54

标签: java mocking mockito

我在我的主类中有一个调用webservice的方法。我想跳过那个方法调用,我怎么能在mockito中做到这一点。代码如下

MainCLass{

int main(){
    // I want to skip this method getting called
    MyClass.callWebservice();
}
}

2 个答案:

答案 0 :(得分:3)

如果您不想使用PowerMock,可以执行以下操作:

  • 将webservice调用解压缩为自己的方法。
  • 扩展您的MainClass并覆盖此方法或使用间谍并存根该方法。

但是,如果您不想仅为此测试更改生产代码,那么肯定会是一个有效的论据。

答案 1 :(得分:1)

这是一个静态调用,只能使用Mockito来模拟。但您可以使用PowerMock执行此操作。这有点复杂,你可以在这里找到一个例子:MockStatic