4

ユニットテストにeasymockを使用しています。テストクラス内のメソッドをモックしようとしています。

ServiceEJB partialMockServiceEJB = EasyMock
            .createMockBuilder(ServiceEJB.class)
             .addMockedMethod("getStatusType")
            .createMock();

しかし、それはエラーをスローします:同じ名前の複数のメソッド。このメソッドを異なる数の引数でオーバーライドしました。これらのオーバーライドされたメソッドのどれが必要かをどのように示すことができますか?ここで引数を適用するにはどうすればよいですか。

ありがとう。

4

2 に答える 2

4

パラメータタイプを渡して、オーバーロードされたメソッドを区別できます。

PortalServiceEJB partialMockServiceEJB = EasyMock
            .createMockBuilder(ServiceEJB.class)
             .addMockedMethod("getStatusType", int.class)
            .createMock();

ところで、ここに部分的にモックアウトされている実際のオブジェクトがないため、これは部分的なモックではありません。また、Mockitoをモックフレームワークと見なすことができます。構文ははるかに優れたIMOです。

于 2012-07-23T21:36:48.880 に答える
2

メトの名前だけでを使用する代わりにaddMockedMethod()、メソッド名とその引数のタイプをパラメーターとして使用するものを使用します:http ://www.easymock.org/api/easymock/3.1/org/easymock/internal /MockBuilder.html#addMockedMethod%28java.lang.String,%20java.lang.Class...%29

于 2012-07-23T21:36:30.623 に答える