クラス StandaloneMockMvcBuilder
java.lang.ObjectSE
org.springframework.test.web.servlet.MockMvcBuilderSupport
org.springframework.test.web.servlet.setup.AbstractMockMvcBuilder<StandaloneMockMvcBuilder>
org.springframework.test.web.servlet.setup.StandaloneMockMvcBuilder
- 実装されているすべてのインターフェース:
MockMvcBuilder
,ConfigurableMockMvcBuilder<StandaloneMockMvcBuilder>
@Controller
登録を受け入れる MockMvcBuilder
により、コントローラーのインスタンス化と初期化、単純な単体テストに類似したそれらの依存関係を完全に制御でき、同時に 1 つのコントローラーをテストすることもできます。 このビルダーは、DispatcherServlet
がアノテーション付きコントローラーでリクエストを処理するために必要な最小限のインフラストラクチャーを作成し、カスタマイズの方法も提供します。結果の構成およびカスタマイズオプションは、ビルダースタイルメソッドを使用することを除き、MVC Java 構成を使用するのと同等です。
ビューリゾルバーを設定するには、実行されるすべてのリクエストに使用する "fixed" ビューを選択するか(setSingleView(View)
を参照)、ViewResolver
のリストを提供します(setViewResolvers(ViewResolver...)
を参照)。
- 導入:
- 3.2
- 作成者:
- Rossen Stoyanchev
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明addInterceptors
(HandlerInterceptor... interceptors) すべての受信リクエストにマップされたインターセプターを追加します。addMappedInterceptors
(StringSE @Nullable [] pathPatterns, HandlerInterceptor... interceptors) パスパターンのセットにマッピングされたインターセプターを追加します。addPlaceholderValue
(StringSE name, StringSE value) スタンドアロンセットアップでは、リクエストマッピングに埋め込まれたプレースホルダー値のサポートはありません。extendMvcSingletons
(@Nullable ServletContextEE servletContext) protected WebApplicationContext
DispatcherServlet
に渡されるWebApplicationContext
を取得するメソッド。setApiVersionStrategy
(@Nullable ApiVersionStrategy versionStrategy) リクエストをマッピングするときに使用するApiVersionStrategy
を設定します。setAsyncRequestTimeout
(long timeout) 非同期実行のタイムアウト値を指定します。ContentNegotiationManager を設定します。setControllerAdvice
(ObjectSE... controllerAdvice) テストで使用するControllerAdvice
インスタンスを 1 つ以上登録します (指定したClass
がインスタンス化されます)。setConversionService
(FormattingConversionService conversionService) カスタムフォーマッタとコンバーターを備えた変換サービスを提供します。setCustomArgumentResolvers
(HandlerMethodArgumentResolver... argumentResolvers) コントローラーメソッドの引数にカスタムリゾルバーを提供します。ファクトリを構成して、カスタムRequestMappingHandlerMapping
を作成します。コントローラーメソッドの戻り値のカスタムハンドラーを提供します。setFlashMapManager
(FlashMapManager flashMapManager) カスタム FlashMapManager インスタンスを提供します。setHandlerExceptionResolvers
(ListSE<HandlerExceptionResolver> exceptionResolvers) リストとして使用する HandlerExceptionResolver 型を設定します。setHandlerExceptionResolvers
(HandlerExceptionResolver... exceptionResolvers) 配列として使用する HandlerExceptionResolver 型を設定します。setLocaleResolver
(LocaleResolver localeResolver) LocaleResolver インスタンスを提供します。setMessageConverters
(HttpMessageConverter<?>... messageConverters) 引数リゾルバーと戻り値ハンドラーで使用するメッセージコンバーターを設定します。これらは、リクエストとレスポンスの本文の読み取りと書き込みをサポートします。PathPatterns
に使用するパーサーを構成します。setRemoveSemicolonContent
(boolean removeSemicolonContent) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。setSingleView
(View view) 指定されたビューインスタンスを常に返す単一のViewResolver
を設定します。setValidator
(Validator validator) デフォルトで作成されたものではなく、カスタムValidator
を提供します。setViewResolvers
(ViewResolver... resolvers) 指定されたViewResolvers
でビューリゾルバーを設定します。クラス org.springframework.test.web.servlet.setup.AbstractMockMvcBuilder から継承されたメソッド
addDispatcherServletCustomizer, addFilter, addFilter, addFilters, alwaysDo, alwaysExpect, apiVersionInserter, apply, build, defaultRequest, defaultResponseCharacterEncoding, dispatchOptions, self
クラス org.springframework.test.web.servlet.MockMvcBuilderSupport から継承されたメソッド
createMockMvc, createMockMvc
コンストラクターの詳細
StandaloneMockMvcBuilder
protected コンストラクター。直接インスタンス化するためのものではありません。- 関連事項:
メソッドの詳細
setControllerAdvice
テストで使用するControllerAdvice
インスタンスを 1 つ以上登録します (指定したClass
がインスタンス化されます)。通常、
@ControllerAdvice
は、Spring Bean として宣言されている限り自動検出されます。ただし、スタンドアロンセットアップは Spring の設定をロードしないため、コントローラーのようにここで明示的に登録する必要があります。- 導入:
- 4.2
setMessageConverters
引数リゾルバーと戻り値ハンドラーで使用するメッセージコンバーターを設定します。これらは、リクエストとレスポンスの本文の読み取りと書き込みをサポートします。メッセージコンバーターがリストに追加されていない場合、代わりにコンバーターのデフォルトリストが追加されます。setValidator
デフォルトで作成されたものではなく、カスタムValidator
を提供します。JSR-303 がクラスパス上にあると仮定すると、使用されるデフォルトの実装はLocalValidatorFactoryBean
です。setConversionService
カスタムフォーマッタとコンバーターを備えた変換サービスを提供します。設定しない場合、DefaultFormattingConversionService
がデフォルトで使用されます。setApiVersionStrategy
リクエストをマッピングするときに使用するApiVersionStrategy
を設定します。- 導入:
- 7.0
addInterceptors
すべての受信リクエストにマップされたインターセプターを追加します。addMappedInterceptors
public StandaloneMockMvcBuilder addMappedInterceptors(StringSE @Nullable [] pathPatterns, HandlerInterceptor... interceptors) パスパターンのセットにマッピングされたインターセプターを追加します。setContentNegotiationManager
ContentNegotiationManager を設定します。setAsyncRequestTimeout
非同期実行のタイムアウト値を指定します。Spring MVC テストでは、この値を使用して、非同期実行が完了するまで待機する時間を決定し、テストで結果を同期的に検証できるようにします。- パラメーター:
timeout
- ミリ秒単位のタイムアウト値
setCustomArgumentResolvers
public StandaloneMockMvcBuilder setCustomArgumentResolvers(HandlerMethodArgumentResolver... argumentResolvers) コントローラーメソッドの引数にカスタムリゾルバーを提供します。setCustomReturnValueHandlers
public StandaloneMockMvcBuilder setCustomReturnValueHandlers(HandlerMethodReturnValueHandler... handlers) コントローラーメソッドの戻り値のカスタムハンドラーを提供します。setHandlerExceptionResolvers
public StandaloneMockMvcBuilder setHandlerExceptionResolvers(ListSE<HandlerExceptionResolver> exceptionResolvers) リストとして使用する HandlerExceptionResolver 型を設定します。setHandlerExceptionResolvers
public StandaloneMockMvcBuilder setHandlerExceptionResolvers(HandlerExceptionResolver... exceptionResolvers) 配列として使用する HandlerExceptionResolver 型を設定します。setViewResolvers
指定されたViewResolvers
でビューリゾルバーを設定します。設定されていない場合、デフォルトでInternalResourceViewResolver
が使用されます。setSingleView
提供されたビューインスタンスを常に返す単一のViewResolver
を設定します。これは、生成されたコンテンツ (JSON、XML、Atom) をレンダリングする場合など、1 つのビューインスタンスのみを使用する必要がある場合に便利なショートカットです。setLocaleResolver
LocaleResolver インスタンスを提供します。指定しない場合、使用されるデフォルトはAcceptHeaderLocaleResolver
です。setFlashMapManager
カスタム FlashMapManager インスタンスを提供します。指定しない場合、デフォルトでSessionFlashMapManager
が使用されます。setPatternParser
PathPatterns
に使用するパーサーを構成します。デフォルトでは、これは
PathPatternParser
のデフォルトインスタンスです。- パラメーター:
parser
- 使用するパーサー- 導入:
- 5.3
setRemoveSemicolonContent
@DeprecatedSE(since="7.0", forRemoval=true) public StandaloneMockMvcBuilder setRemoveSemicolonContent(boolean removeSemicolonContent) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。PathMatcher
およびUrlPathHelper
の使用は、Web モジュールでの実行時の使用では非推奨となり、代わりにPathPatternParser
による解析パターンが推奨されます。";" の場合に設定(セミコロン)コンテンツはリクエスト URI から削除する必要があります。値が提供されている場合は、UrlPathHelper.setRemoveSemicolonContent(boolean)
に順番に設定されます。addPlaceholderValue
スタンドアロンセットアップでは、リクエストマッピングに埋め込まれたプレースホルダー値のサポートはありません。このメソッドでは、手動で提供されたプレースホルダー値を使用して、解決できます。または、WebApplicationContext
を初期化するテストの作成を検討してください。- 導入:
- 4.2.8
setCustomHandlerMapping
public StandaloneMockMvcBuilder setCustomHandlerMapping(SupplierSE<RequestMappingHandlerMapping> factory) ファクトリを構成して、カスタムRequestMappingHandlerMapping
を作成します。- パラメーター:
factory
- ファクトリ- 導入:
- 5.0
initWebAppContext
クラスからコピーされた説明:AbstractMockMvcBuilder
DispatcherServlet
に渡されるWebApplicationContext
を取得するメソッド。MockMvc
インスタンスが作成される前にAbstractMockMvcBuilder.build()
から呼び出されます。extendMvcSingletons
このメソッドをサブクラスから使用して、追加のHandlerMapping
、HandlerAdapter
などの追加の Spring MVC インフラストラクチャを登録できます。- パラメーター:
servletContext
- ServletContext- 戻り値:
- 追加の MVC インフラストラクチャオブジェクトインスタンスを含むマップ
- 導入:
- 5.1.4
PathMatcher
およびUrlPathHelper
の使用は、Web モジュールでの実行時の使用では非推奨となり、代わりにPathPatternParser
による解析パターンが推奨されます。