我有第三方組件,我想嘲笑,但它返回類具有複雜的層次結構和一些接口具有靜態字段初始化一些類不提供API。我不需要任何隱藏課程。模擬類與缺少的依賴關係
示例: 假設我們要模擬實現Combo的類MutableCombo。但是接口組合具有由Breaker初始化的字段。破壞程序是實現程序包的一部分,在編譯和測試期間不能由開發人員訪問。
public interface Combo{
String FUU = Breaker.getFoo();
String BAR = Breaker.getBar();
}
public class MutableCombo implements Combo;
我想測試我的課與MutableCombo工作,但不能嘲笑,因爲
java.lang.NoClassDefFoundError: Breaker
at Combo.<clinit>(Combo.java:36)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
你是什麼意思的'部分實施包'? – CAMOBAP 2013-02-28 08:26:40
我使用第三方組件。組件有2個部分 - API和實現包。作爲開發人員,我只能使用組件的API部分。 – ainlolcat 2013-02-28 08:28:27