2012-02-26 10 views
2

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

@RunWith(JMock.class) 
public class FeederFilterTest { 

private TestedClass service; 

@Mock 
private TheMockedInterface mock; 
    ... 
} 

@Service 
public class TestedClass { 

@Autowired 
private TheMockedInterface interface; 
... 
    } 

私が言ったように - 予想通りモックオブジェクトが作成されます - しかし、私はTheMockInterfaceを使用していますTestClass上のメソッドを呼び出すとき - 私はNullPointerExceptionが得られます。

私はMockitoが@InjectMocksを持っていることを知っています - jMockもそうですか?

答えて

2

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

関連する問題