インターフェース WebTestClient.Builder
- 含まれているインターフェース:
- WebTestClient
public static interface WebTestClient.Builder
テストに使用する
WebClient をカスタマイズする手順。内部で WebClient.Builder に委譲します。メソッドのサマリー
修飾子と型メソッド説明apply(WebTestClientConfigurer configurer) 指定されたコンフィギュレーターをこのビルダーインスタンスに適用します。WebClient.create(String)の説明に従ってベース URI を構成します。build()WebTestClientインスタンスをビルドします。codecs(ConsumerSE<ClientCodecConfigurer> configurer) defaultCookie(StringSE cookieName, StringSE... cookieValues) 指定されたヘッダーを追加していないすべてのリクエストに追加します。defaultCookies(ConsumerSE<MultiValueMap<StringSE, StringSE>> cookiesConsumer) 指定されたコンシューマーでデフォルトの Cookie を操作します。defaultHeader(StringSE headerName, StringSE... headerValues) 指定されたヘッダーを追加していないすべてのリクエストに追加します。defaultHeaders(ConsumerSE<HttpHeaders> headersConsumer) 指定されたコンシューマーでデフォルトのヘッダーを操作します。entityExchangeResultConsumer(ConsumerSE<EntityExchangeResult<?>> consumer) レスポンスが単一のエンティティ、エンティティのリスト、byte[] に完全にデコードされた後に毎回呼び出されるEntityExchangeResultコールバックを構成します。exchangeStrategies(ConsumerSE<ExchangeStrategies.Builder> configurer) 使用すべきではありません。exchangeStrategies(ExchangeStrategies strategies) 使用するExchangeStrategiesを構成します。filter(ExchangeFilterFunction filter) 指定されたフィルターをフィルターチェーンに追加します。filters(ConsumerSE<ListSE<ExchangeFilterFunction>> filtersConsumer) 指定されたコンシューマーでフィルターを操作します。responseTimeout(DurationSE timeout) レスポンスを待機する最大時間。uriBuilderFactory(UriBuilderFactory uriBuilderFactory) baseUrl(String)の代替として、また事実上オーバーライドするために、事前に構成されたUriBuilderFactoryインスタンスを提供します。
メソッドの詳細
baseUrl
WebClient.create(String)の説明に従ってベース URI を構成します。uriBuilderFactory
baseUrl(String)の代替として、また事実上オーバーライドするために、事前に構成されたUriBuilderFactoryインスタンスを提供します。defaultHeader
指定されたヘッダーを追加していないすべてのリクエストに追加します。- パラメーター:
headerName- ヘッダー名headerValues- ヘッダー値
defaultHeaders
指定されたコンシューマーでデフォルトのヘッダーを操作します。コンシューマーに提供されるヘッダーは「ライブ」であるため、コンシューマーを使用して既存のヘッダー値を上書きしたり、値を削除したり、他のHttpHeadersメソッドを使用したりできます。- パラメーター:
headersConsumer-HttpHeadersを消費する関数- 戻り値:
- このビルダー
defaultCookie
指定されたヘッダーを追加していないすべてのリクエストに追加します。- パラメーター:
cookieName- クッキー名cookieValues- クッキーの値
defaultCookies
指定されたコンシューマーでデフォルトの Cookie を操作します。コンシューマーに提供されるマップは「ライブ」であるため、コンシューマーを使用して、既存のヘッダー値を上書きしたり、値を削除しSEたり、その他のMultiValueMapメソッドを使用したりできます。- パラメーター:
cookiesConsumer- Cookie マップを使用する関数- 戻り値:
- このビルダー
filter
指定されたフィルターをフィルターチェーンに追加します。- パラメーター:
filter- チェーンに追加されるフィルター
filters
指定されたコンシューマーでフィルターを操作します。コンシューマーに提供されるリストは「ライブ」であるため、コンシューマーを使用してフィルターを削除したり、順序を変更したりできます。- パラメーター:
filtersConsumer- フィルターリストを使用する関数- 戻り値:
- このビルダー
entityExchangeResultConsumer
レスポンスが単一のエンティティ、エンティティのリスト、byte[] に完全にデコードされた後に毎回呼び出されるEntityExchangeResultコールバックを構成します。事実上、以下のすべてと同等ですが、グローバルに 1 回登録されます。client.get().uri("/accounts/1") .exchange() .expectBody(Person.class).consumeWith(exchangeResult -> ... )); client.get().uri("/accounts") .exchange() .expectBodyList(Person.class).consumeWith(exchangeResult -> ... )); client.get().uri("/accounts/1") .exchange() .expectBody().consumeWith(exchangeResult -> ... ));構成されたコンシューマーは、
Flux<T>にデコードされたレスポンスには適用されないことに注意してください。レスポンスは、reactor.test.StepVerifierなどを介してテストクライアントのワークフローの外部で使用できます。- パラメーター:
consumer- エンティティのレスポンスに適用するコンシューマー- 戻り値:
- ビルダー
- 導入:
- 5.3.5
codecs
- パラメーター:
configurer- 適用するコンフィギュレーター- 導入:
- 5.1.13
exchangeStrategies
使用するExchangeStrategiesを構成します。ほとんどの場合、
ExchangeStrategiesのコーデックを置き換えるのではなくカスタマイズできるcodecs(Consumer)を使用することをお勧めします。これにより、複数の関係者がコーデック設定に貢献できるようになります。デフォルトでは、これは
ExchangeStrategies.withDefaults()に設定されています。- パラメーター:
strategies- 使用する戦略
exchangeStrategies
@DeprecatedSE WebTestClient.Builder exchangeStrategies(ConsumerSE<ExchangeStrategies.Builder> configurer) 使用すべきではありません。5.1.13 現在、codecs(Consumer)を推奨exchangeStrategies(ExchangeStrategies)で構成された戦略をカスタマイズします。このメソッドは、複数の関係者がExchangeStrategiesを更新するシナリオで使用するために設計されています。responseTimeout
レスポンスを待機する最大時間。デフォルトでは 5 秒。
- パラメーター:
timeout- レスポンスタイムアウト値
apply
指定されたコンフィギュレーターをこのビルダーインスタンスに適用します。これは、事前にパッケージ化されたカスタマイズを適用できます。
- パラメーター:
configurer- 適用するコンフィギュレーター
build
WebTestClient build()WebTestClientインスタンスをビルドします。
codecs(Consumer)を推奨