クラス MockRestServiceServer
java.lang.ObjectSE
org.springframework.test.web.client.MockRestServiceServer
クライアント側 REST テストのメインエントリポイント。
RestTemplate を直接または間接的に使用するテストに使用します。RestTemplate を介して実行される予想されるリクエストと、返送するモックレスポンスを設定する方法を提供するため、実際のサーバーの必要性がなくなります。 以下は、MockRestRequestMatchers、MockRestResponseCreators、ExpectedCount からの静的インポートを想定した例です。
RestTemplate restTemplate = new RestTemplate()
MockRestServiceServer server = MockRestServiceServer.bindTo(restTemplate).build();
server.expect(manyTimes(), requestTo("/hotels/42")).andExpect(method(HttpMethod.GET))
.andRespond(withSuccess("{ \"id\" : \"42\", \"name\" : \"Holiday Inn\"}", MediaType.APPLICATION_JSON));
Hotel hotel = restTemplate.getForObject("/hotels/{id}", Hotel.class, 42);
// Use the hotel instance...
// Verify all expectations met
server.verify();
上記の代わりに、MockMvc のインスタンスに対してリクエストを実行できるようにする RestTemplate に MockMvcClientHttpRequestFactory を設定することもできます。
- 導入:
- 3.2
- 作成者:
- Craig Walls, Rossen Stoyanchev
ネストされたクラスの要約
ネストされたクラス修飾子と型クラス説明static interfaceMockRestServiceServerを作成するビルダー。メソッドのサマリー
修飾子と型メソッド説明bindTo(RestClient.Builder restClientBuilder) bindTo(RestTemplate restTemplate) 指定されたRestTemplateに応答するために使用する必要があるMockRestServiceServerのビルダーを返します。bindTo(RestGatewaySupport restGatewaySupport) 指定されたRestGatewaySupportのRestTemplateに応答するために使用されるMockRestServiceServerのビルダーを返します。static MockRestServiceServercreateServer(RestTemplate restTemplate) bindTo(restTemplate).build()のショートカット。static MockRestServiceServercreateServer(RestGatewaySupport restGateway) bindTo(restGateway).build()のショートカット。expect(ExpectedCount count, RequestMatcher matcher) リクエストの実行が予想される回数も示すexpect(RequestMatcher)の代替。expect(RequestMatcher matcher) 単一の HTTP リクエストに対する期待を設定します。voidreset()すべての期待値と記録されたリクエストを削除して内部状態をリセットします。voidverify()expect(RequestMatcher)を介して設定されたすべての予想されるリクエストが実際に実行されたことを確認します。voidverify(DurationSE timeout) すべての期待が満たされるまで指定された時間まで待機するverify()のバリアント。
メソッドの詳細
expect
単一の HTTP リクエストに対する期待を設定します。返されたResponseActionsを使用して、さらに期待を設定し、レスポンスを定義できます。このメソッドは、予想されるすべてのリクエストをセットアップするために、基礎となる
RestTemplateを介してリクエストを開始する前に何度でも呼び出すことができます。- パラメーター:
matcher- リクエストマッチャー- 戻り値:
- 期待の表現
expect
リクエストの実行が予想される回数も示すexpect(RequestMatcher)の代替。リクエストの期待値が 1 よりも大きい場合、最初の実行のみが宣言の順序と一致することが期待されます。後続のリクエスト実行は、その後どこにでも挿入できます。
- パラメーター:
count- 予想される数matcher- リクエストマッチャー- 戻り値:
- 期待の表現
- 導入:
- 4.3
verify
public void verify()expect(RequestMatcher)を介して設定されたすべての予想されるリクエストが実際に実行されたことを確認します。- 例外:
AssertionErrorSE- すべての期待が満たされていない場合
verify
すべての期待が満たされるまで指定された時間まで待機するverify()のバリアント。これは、非同期リクエストを含むテストに役立ちます。- パラメーター:
timeout- すべての期待が満たされるのを待つ時間- 例外:
AssertionErrorSE- 指定されたタイムアウトまでにすべての期待が満たされなかった場合、またはそれ以前のいずれかの時点で期待が失敗した場合。- 導入:
- 5.3.4
reset
public void reset()すべての期待値と記録されたリクエストを削除して内部状態をリセットします。bindTo
public static MockRestServiceServer.MockRestServiceServerBuilder bindTo(RestClient.Builder restClientBuilder) 指定されたRestClient.BuilderのRestClientに応答するために使用されるMockRestServiceServerのビルダーを返します。- 導入:
- 6.1
bindTo
指定されたRestTemplateに応答するために使用する必要があるMockRestServiceServerのビルダーを返します。- 導入:
- 4.3
bindTo
public static MockRestServiceServer.MockRestServiceServerBuilder bindTo(RestGatewaySupport restGatewaySupport) 指定されたRestGatewaySupportのRestTemplateに応答するために使用されるMockRestServiceServerのビルダーを返します。- 導入:
- 4.3
createServer
bindTo(restTemplate).build()のショートカット。- パラメーター:
restTemplate- RestTemplate でモックテストをセットアップする- 戻り値:
- モックサーバー
createServer
bindTo(restGateway).build()のショートカット。- パラメーター:
restGateway- モックテスト用にセットアップする REST ゲートウェイ- 戻り値:
- モックサーバー