所以比方說,我有一些類中定義:EasyMock的構造有很多爭論
MyClass {
private A _a;
private B _b;
private C _c;
MyClass(A a, B b, C c) {
_a = a;
_b = b;
_c = c;
}
public someMethodIDontCareAbout() {
_b.doSomething();
_c.doSomething();
}
public someMethodIWantToTest() {
_a.doSomething();
}
}
現在,讓我們說,我只是想測試someMethodIWantToTest(),但我不關心其他的方法。我寧願不必創建一個新的MyClass對象和模擬類B和C.該構造函數需要它們,但我沒有使用它們,因爲我的方法我想測試只使用答:
有沒有辦法在容易模擬說EasyMock.createMockBuilder(MyClass.class).withConstructor(EasyMock.createNiceMock(A.class)).createMock();
有沒有構造函數只需要類A,但這就是我想要的。如果沒有指定B和C,沒有簡單的方法可以做到這一點嗎?理想情況下,它會爲我不想要的構造函數中的所有其他參數創建niceMocks。
你不能使用'null'值? – Keppil
是的,但是如果你有spring bean,那麼可能有30個參數給構造函數,而且當我只關心2個參數時,排隊所有參數和放置28個nulls是很煩人的。我希望有一些EasyMock的幻想。 – REMOSEWA