我有一個類,它擴展了我不擁有的另一個類。我的課程用於計算針對父類的很多調用中的幾個指標。有沒有一種方法可以在單元測試中嘲笑父類(同時保留我孩子的邏輯),以確保針對我的孩子的調用總是「通過」到包裝父代?模擬一個父類來測試一個包裝類
在代碼
Class SlowClass {
public Object doFoo(Object obj) {
//...
}
public Object doBar(Object obj) {
//...
}
// Many more methods I don't care about.
}
Class SlowClassWrapper extends SlowClass {
public Object doFoo(Object obj) {
//...
Object toReturn = super.doFoo(obj)
//...
return toReturn;
}
public Object doBar(Object obj) {
//...
Object toReturn = super.doFoo(obj)
//...
return toReturn;
}
}
我想以某種方式模擬出SlowClass.doFoo
,使SlowClassWrapper.doFoo
使得沒有實際進行調用其父的電話。然後我想確認obj
完好無損,並且SlowClass.doFoo
的響應恢復原狀。
感謝。構圖是可能的,但緩慢的庫正在開發中(我們每隔幾個月就會推出新版本),而這個類有約60種方法。煩人。 –