2

spark-frameworkに基づく REST サービスがあります。このように見えます(簡略化):

public void init() {

    get(new Route("spark/favorites") {
        @Override
        public Object handle(Request request, Response response) {
            ExternalService exS= new ExternalService();             

            ArrayList<String> favs= exS.getFavorites();

            Gson gson = getGson();
            return gson.toJson(favs);
        }
    });
 }

ここで、get/post/put/delete が希望どおりに動作するかどうかを確認するために、サービスのテストをいくつか書きたいと思います。そのため、テスト中に組み込みの Jetty にデプロイします。

私が今直面している問題は、私のサービスが外部の REST サービスに依存していることです。それらへのすべての呼び出しをモックしたいと思います(高速な単体テストを行うため)。しかし、実行中のサービス内でモックする方法がわかりません。

それは可能ですか?別の REST フレームワークに切り替える必要がありますか? 提案?

4

1 に答える 1

0

アプリが Web サービス モックまたは実際のサード パーティ Web サービスと通信するかどうかに関係なく、これは統合テストです。単体テストは、クラスを分離してテストするときです。

外部 Web サービスをモック アウトする場合は、サード パーティ製アプリへのリンクを構成可能にし、統合テスト用に別の構成を用意する必要があります。Web サービスのモックには、利用可能ないくつかのモック フレームワークのいずれかを使用できます: https://sourceforge.net/projects/soaprest-mocker

于 2012-11-18T23:01:57.223 に答える