2011-09-14 23 views

回答

8

PowerMock旨在作爲EasyMock和Mockito的擴展。從馬的口中:「PowerMock是一個框架,擴展了其他模擬庫,如EasyMock,具有更強大的功能。」

在任何情況下,EasyMock都不會等同於expectNew,也不存在Mockito中的任何一個 - 這正是PowerMock試圖填補的空白。這就是說,PowerMock完全有能力在Mockito上做到這一點。下面是the documentation樣本:

如何嘲笑新對象的建設

使用PowerMockito.whenNew,例如

whenNew(MyClass.class).withNoArguments().thenThrow(new 
IOException("error message")); 

注意,你必須準備好類 測試創建的MyClass新實例,而不是MyClass的本身。 例如如果執行新MyClass()的類被稱爲X,那麼爲了使newNew能夠正常工作,您必須執行@PrepareForTest(X.class) 。

如何驗證新對象的建設 使用PowerMockito.verifyNew, 例如

verifyNew(MyClass.class).withNoArguments(); 
相關問題