1
を満足させることができるテストクラスで私は例外可能な注射剤で
の下に取得しています依存クラスNeedToBeMockedClass
public class ClassToBeTested{
private NeedToBeMockedClass needToBeMockedObj;
public ClassToBeTested(String a, boolean b){
needToBeMockedObj = new NeedToBeMockedClass(String x, int y);
}
public String helloWorld(String m, String n){
// do smething
needToBeMockedObj.someMethod(100, 200);
// do smething more
}
}
テストケース
@Tested
private ClassToBeTested classUnderTest;
@Injectable
NeedToBeMockedClass mockInstance;
@Test
public void testHelloWorld(){
new NonStrictExpectations(classUnderTest) {
{
Deencapsulation.invoke(mockInstance, "someMethod", withAny(AnotherClassInstance.class), 200);
result = true;
}
};
//verification
}
を模擬するためにJMockitを使用していませんコンストラクタ
java.lang.IllegalArgumentException: No constructor in tested class that can be satisfied by available injectables
私はテストする必要があるクラスのインスタンスを初期化していないようですそれは嘲笑される必要があります。
私はJMockitに慣れていないんだけど、あなたが新しい(コンストラクタ引数を模擬するか、手動でテスト中のクラスをインスタンス化する必要があるとその時点でコンストラクタ引数を提供枯れることが表示されます。 –