2013-03-08 30 views
1

我在調用webservice的主類中有一個方法。我想跳過這種方法調用,我怎麼能在mockito中做到這一點。代碼如下使用mockito跳過靜態方法調用

MainCLass{ 

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

你不能重構'MainClass'的源代碼嗎? – gontard 2013-03-08 15:16:25

回答

1

這是一個靜態調用,不能用Mockito嘲笑。但是你可以用PowerMock來做到這一點。這是一個有點複雜,你在這裏找到一個例子:MockStatic

3

如果你不想使用PowerMock,你可以做到以下幾點:

  • 提取Web服務調用到自己的方法。
  • 擴展您的MainClass並重寫此方法或使用間諜和存根方法。

但是肯定的是,如果您不想僅爲此測試更改生產性代碼,那麼這將是一個有效的參數。