0

対象のサービスのコンストラクターで作成されている jerseyclient をモックする必要があります。対象となるサービスは、Spring の @Autowired を介して注入された System Under Test です。

サービスのコンストラクタには client=client.create() メソッドを書いています。このコードを変更することはできません (これはコードの匂いですが)。ジャージークライアントをモックしたいのですが、サービスのコンストラクターにあります。私はこれを嘲笑することはできません

4

1 に答える 1

-1

すっごく...長い話..mockitoを使用していることを認めます.テスト用のsrcには、テスト用のアプリケーションコンテキストが必要です..通常、プログラムで定義するため、それらの行に沿って..使用する.xmlファイルをインポートしますテスト目的(私の場合、「ローカル」環境に使用するものではなく、メールサーバー用、接続用、および認証用にインポートしました)。その後、すべてのサービスをセットアップする方法を定義します。テンプレートリゾルバーにもモックを追加する必要があるかもしれませんが、最終的にはこれはすべてスタックに依存します...したがって、アプローチに基づいて最終的なことは少し異なるかもしれませんが、最終的にはラインに沿って何かをするつもりです私が以下に概説するもの:

                                    @Configuration
                @ImportResource(value = { 
                        "classpath:applicationContext-jdbc-test.xml",
                        "classpath:applicationContext-ldap-test.xml",
                    "classpath:applicationContext-mail-test.xml"})
                public class ApplicationTestContext {

                    @Bean
                    public ObjectMapperWrapper objectMapperWrapper() {
                        return Mockito.mock(ObjectMapperWrapper.class);
                    }

                    @Bean
                    public YourService yourService() {
                        return new YourServiceImpl();
                    }
                    }
于 2015-05-28T14:09:36.253 に答える