3
我不斷獲取WanterButNotInvoked例外,在我的UT與下面的代碼:模擬單類無效的方法使用PowerMockito
@RunWith(PowerMockRunner.class)
@PrepareForTest({ CounterHandler.class,
TrHandlerProtocolsCounterHandler.class, IProtocolCounterHandler.class })
@Test
public void testInitialize()
{
IProtocolCounterHandler counter = new TrHandlerProtocolsCounterHandler();
CounterHandler mockCounter = PowerMockito.spy(CounterHandler.getInstance());
PowerMockito.doNothing().when(mockCounter).initialize();
counter.initialize();
Mockito.verify(mockCounter).initialize();
} ================ ======
CounterHandler類
public void initialize() {
//do something
}
======================
TrHandlerProtocolsCounterHandler類
@Override
public void initialize() {
CounterHandler.getInstance().initialize();
}
我已經調試這Counterhandler.getInstance.initialize被執行了,但是當我嘗試驗證它,它說,有與模擬沒有互動。謝謝!
+1最好把文章的內容放在這裏,很容易引用。因爲鏈接可能會在某段時間後中斷。 – 2017-10-03 09:22:31