2009-05-20 15 views

答えて

0

はたぶん、これはばかげた質問で解決するにはどうすればよいMockit.newemptyProxyようJmockitを使用してインスタンスを作成する方法はありますが、あなたは実際にJMockitは、このような状況では必要なのでしょうか? Aのサブクラスを作成して、模擬したいメソッドをオーバーライドできませんか?このような何か:

class MyMockA extends A { 

    @Override 
    int myMethod(int x) { 
     // do stuff 
    } 
} 

@Test 
public void test_A_handler() { 
    A a = new MyMockA(); 
    A_handler testSubject = new A_handler(); 
    assertEquals(123, testSubject.handleA(a)); 
} 
2

あなたは、単にこのようにそれを行うことができます:


@Test 
public void mockAbstractClassA(final A mock) 
{ 
    new Expectations() {{ 
     mock.doThis(); 
     mock.doThat(); returns(123); 
    }}; 

    new ClassUnderTest(mock).doStuff(); 
} 

は、試験方法における「モック」パラメータに注意してください。

関連する問題