JMock實踐---(三)從Mock物件的方法丟擲異常
阿新 • • 發佈:2019-02-04
宣告:
Author:趙志乾
Date:2017-7-30
Declaration:All Right Reserved!!!
從Mock物件的方法丟擲異常
1、throwException動作
可以在will子句中使用throwException動作從Mock物件的方法中丟擲異常,如下例所示:
allowing (bank).withdraw(with(any(Money.class))); will(throwException(new WithdrawalLimitReachedException());
注:JMock會檢測你試圖丟擲的代檢異常是否與被調的Mock物件方法相容。如果不相容,JMock將會設定該測試失敗並給出描述性的錯誤資訊。如下例所示:
allowing (bank).withdraw(Money.ZERO); will(throwException(new IllegalArgumentException("you cannot withdraw nothing!");
2、JMock允許Mock物件的方法丟擲任何執行時異常和錯誤。
注:本部落格中的例項程式碼均來自於JMock Cookbook。