2016-07-11 10 views
0

私は春のアプリケーションでは、サービスクラスに依存している残りのAPIをテストする必要がありますまた、DAOクラスに依存しています。コントローラインスタンスを@InjectMocks、サービスを@Spy、ダオを@Mockに設定しました。私の現在のシナリオでは、私がテストしているAPIはスパイの中でメソッドを呼び出し、呼び出されたメソッドはモックでメソッドを呼び出します。私がスパイを使用しない場合、テストは適切に機能せず、使用されると、daoのインスタンスはサービスに注入されません。このコンテキストで私はスパイオブジェクトにDAOの模擬オブジェクトを注入する必要がありますか?スパイオブジェクトにモックオブジェクトを挿入するには?

+0

コントローラコードをユニットテストしようとしていますか? –

+0

はい!私はDAOインスタンスが残りのAPIにアクセスしている間にサービスインスタンスを通して呼び出されていることを確認しようとしています。 – msucil

答えて

1

サービスクラスで@Spy@InjectMocksの両方を使用できますが、正しく動作しない可能性があります。 私はそれがあなたのテストを分けるベストプラクティスだと思います。 rest apiの1つのテストを作成し、サービスからモックを作成し、サービスの2番目のテストを作成することができます。

関連する問題