インターフェース WebTestClient
public interface WebTestClient
Web サーバーをテストするためのクライアント。内部的に
WebClient を使用してリクエストを実行し、レスポンスを検証するためのスムーズな API も提供します。このクライアントは、HTTP 経由で任意のサーバーに接続したり、モックリクエストとレスポンスを使用して WebFlux アプリケーションに接続したりできます。bindToXxx メソッドのいずれかを使用して、インスタンスを作成します。例:
- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Brian Clozel, Sam Brannen, Micha ł Rowicki
ネストされたクラスの要約
ネストされたクラス修飾子と型インターフェース説明static interfaceレスポンス本文の内容に対する期待の仕様。static interfaceWebTestClient.BodySpec<B, S extends WebTestClient.BodySpec<B,S>> 単一のオブジェクトにデコードされたレスポンス本文に対する期待の仕様。static interfaceWebClient.Builderを介して基礎となるWebClientをカスタマイズする手順。static interfaceWebFluxConfigurerと同等で内部的に委譲するコントローラー構成をカスタマイズするための仕様。static interfaceWebTestClient.ListBodySpec<E extends @Nullable ObjectSE>リストにデコードされたレスポンス本文に対する期待の仕様。static interfaceサーバーなしでテストをセットアップするための基本仕様。static interfaceリクエストの本文を提供するための仕様。static interfaceリクエストの本文と URI を提供するための仕様。static interfaceリクエストヘッダーを追加し、交換を実行するための仕様。static interfaceリクエストヘッダーとリクエストの URI を提供するための仕様。static interfaceアサーションをレスポンスに適用するための連鎖 API。static interfaceルーター関数の構成をカスタマイズするための仕様。static interfaceWebTestClient.UriSpec<S extends WebTestClient.RequestHeadersSpec<?>>リクエストの URI を提供するための仕様。フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSEWebTestClientを介して実行されるすべてのリクエストに一意の ID を割り当てるために使用されるリクエストヘッダーの名前。メソッドのサマリー
修飾子と型メソッド説明static WebTestClient.MockServerSpec<?> bindToApplicationContext(ApplicationContext applicationContext) このオプションを使用して、アプリケーションの Spring 構成またはそのサブセットからサーバーをセットアップします。static WebTestClient.ControllerSpecbindToController(ObjectSE... controllers) bindToRouterFunction(RouterFunction<?> routerFunction) static WebTestClient.Builderこのサーバー設定オプションを使用すると、ライブサーバーに接続できます。static WebTestClient.BuilderbindToServer(ClientHttpConnector connector) 事前に構成されたコネクターを備えたbindToServer()のバリアント。static WebTestClient.MockServerSpec<?> bindToWebHandler(WebHandler webHandler) 特定の WebHandler をターゲットとする「モック」サーバーとの統合テスト。delete()HTTP DELETE リクエストを準備します。get()HTTP GET リクエストを準備します。head()HTTP HEAD リクエストを準備します。method(HttpMethod method) 指定されたHttpMethodのリクエストを準備します。mutate()このテストクライアントのプロパティを変更するためのビルダーを返します。mutateWith(WebTestClientConfigurer configurer) WebTestClientを変更し、指定されたコンフィギュレーターを適用して、新しいインスタンスを構築します。options()HTTP OPTIONS リクエストを準備します。patch()HTTP PATCH リクエストを準備します。post()HTTP POST リクエストを準備します。put()HTTP PUT リクエストを準備します。
フィールドの詳細
WEBTESTCLIENT_REQUEST_ID
WebTestClientを介して実行されるすべてのリクエストに一意の ID を割り当てるために使用されるリクエストヘッダーの名前。これは、リクエスト処理のすべてのフェーズ (たとえば、サーバー側コンポーネントから) でその ID にコンテキスト情報を保存し、後でExchangeResultが使用可能になったときにその情報を検索する場合に役立ちます。- 関連事項:
メソッドの詳細
get
head
post
put
patch
delete
options
method
指定されたHttpMethodのリクエストを準備します。- 戻り値:
- ターゲット URL を指定するための仕様
mutate
WebTestClient.Builder mutate()このテストクライアントのプロパティを変更するためのビルダーを返します。mutateWith
WebTestClientを変更し、指定された設定プログラムを適用して、新しいインスタンスを作成します。基本的には次のショートカットです。mutate().apply(configurer).build();
- パラメーター:
configurer- 適用するコンフィギュレーター- 戻り値:
- 変異したテストクライアント
bindToController
- パラメーター:
controllers- テストする 1 つ以上のコントローラーインスタンス (指定されたClassはインスタンスに変換されます)- 戻り値:
- サーバーとクライアントの設定をカスタマイズするためのチェーン API。
WebTestClient.MockServerSpec.configureClient()を使用してクライアント構成に移行する
bindToRouterFunction
- パラメーター:
routerFunction- テストする RouterFunction- 戻り値:
- サーバーとクライアントの設定をカスタマイズするためのチェーン API。
WebTestClient.MockServerSpec.configureClient()を使用してクライアント構成に移行する
bindToApplicationContext
static WebTestClient.MockServerSpec<?> bindToApplicationContext(ApplicationContext applicationContext) このオプションを使用して、アプリケーションの Spring 構成またはそのサブセットからサーバーをセットアップします。内部的に、提供された構成はWebHttpHandlerBuilderに渡され、リクエスト処理チェーンがセットアップされます。結果の WebFlux アプリケーションは、モックリクエストとレスポンスを使用して HTTP サーバーなしでテストされます。Spring 構成をテストクラスに効率的にロードして挿入するために、TestContext フレームワークと
@ContextConfigurationの使用を検討してください。- パラメーター:
applicationContext- Spring コンテキスト- 戻り値:
- サーバーとクライアントの設定をカスタマイズするためのチェーン API。
WebTestClient.MockServerSpec.configureClient()を使用してクライアント構成に移行する
bindToWebHandler
特定の WebHandler をターゲットとする「モック」サーバーとの統合テスト。- パラメーター:
webHandler- テストするハンドラー- 戻り値:
- サーバーとクライアントの設定をカスタマイズするためのチェーン API。
WebTestClient.MockServerSpec.configureClient()を使用してクライアント構成に移行する
bindToServer
このサーバー設定オプションを使用すると、ライブサーバーに接続できます。WebTestClient client = WebTestClient.bindToServer() .baseUrl("http://localhost:8080") .build();- 戻り値:
- クライアント構成をカスタマイズするためのチェーン API
bindToServer
事前に構成されたコネクターを備えたbindToServer()のバリアント。- 戻り値:
- クライアント構成をカスタマイズするためのチェーン API
- 導入:
- 5.0.2