2

jMockを使用してモックオブジェクトを作成しようとしています。モックオブジェクトは問題ないように見えますが、テストされたクラスには注入されていません。これが私のコードです:

@RunWith(JMock.class)
public class FeederFilterTest {

private TestedClass service;

@Mock
private TheMockedInterface mock;
    ...
}

@Service
public class TestedClass {

@Autowired
private TheMockedInterface interface;
...
    }

私が言ったように-モックオブジェクトは期待どおりに作成されます-しかし、TestClassを使用するメソッドを呼び出すTheMockInterfaceと、NullPointerExceptionが発生します。

@InjectMocksはMockitoが持っていることを知っています-jMockにもそのようなものがありますか?

4

1 に答える 1

2

JMockは、自動インスタンス作成をインターセプトしません。それは設計上の選択です。私たちの見解では、内部で作成されたオブジェクトは、モックが必要になるほど複雑であってはなりません。行うものはすべて渡され、依存関係が明示的にされる必要があります。そのような巧妙なことを行う他のフレームワークがあり、誰かがすぐにここにリンクを投稿すると確信しています:)

于 2012-02-27T17:09:24.947 に答える