異なるホスト/ポートを持ち、単一の @Test メソッドによって実行されるコードで両方が呼び出される Spring Cloud Contract を使用して複数の Wiremock スタブをセットアップする最良の方法は何ですか? たとえば、ServiceA.doSomething() をテストしたいのですが、このメソッドは ServiceB.doSomethingElse() と ConsulClient.getKVValue() を呼び出します。WireMockRestServiceServer の 1 つのインスタンスを作成するのに問題はありませんが、別のベース URL を指す同じテスト内で使用される 2 つ目のインスタンスを作成する方法がわかりません。これを実行しようとしている理由は、Consul に対して行う呼び出しをスタブ化する必要があり、これらの要求を常にhttp://localhost:8500に送信する必要があるためです。これにより、他の要求は負荷を介して送信されます。バランスの取れた RestTemplate。私のシナリオを明確に説明できたことを願っています。
spring-cloud-contract - Spring Cloud Contract を使用して、異なるホスト/ポートに対して複数の Wiremock スタブを設定するにはどうすればよいですか?
1137 次
1 に答える
2
Stub Runner に関しては、依存関係ごとに HttpStub サーバーを持つことができます。依存関係の文字列ベースの表記に別のポートを提供するだけです。例@AutoConfigureStubRunner(ids = {"com.example:beer-api-producer:+:stubs:8090", "a.b:artifact:0.0.1.RELEASE:prod-stubs:9999"})
。ここで説明するように、負荷分散されたものをスタブ化できます - http://cloud.spring.io/spring-cloud-contract/1.0.x/spring-cloud-contract.html#_stub_runner_spring_cloud
于 2016-12-20T16:14:29.810 に答える