@TargetSE(valueSE=TYPESE) @RetentionSE(valueSE=RUNTIMESE) @DocumentedSE @InheritedSE @BootstrapWith(value=org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTestContextBootstrapper.class) @ExtendWith(value=org.springframework.test.context.junit.jupiter.SpringExtension.class) @OverrideAutoConfiguration(enabled=false) @TypeExcludeFilters(value=org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTypeExcludeFilter.class) @AutoConfigureCache @AutoConfigureJson @AutoConfigureWebFlux @AutoConfigureWebTestClient @ImportAutoConfiguration public @interface WebFluxTest
@RunWith(SpringRunner.class) と組み合わせて使用できるアノテーション。テストが Spring WebFlux コンポーネントのみに焦点を当てている場合に使用できます。 このアノテーションを使用すると、完全な自動構成が無効になり、代わりに WebFlux テストに関連する構成のみが適用されます(つまり、@Controller、@ControllerAdvice、@JsonComponent、Converter/GenericConverter、WebFluxConfigurer Bean は適用されますが、@Component、@Service、@Repository Bean は適用されません)。
デフォルトでは、@WebFluxTest でアノテーションが付けられたテストも WebTestClient を自動構成します。WebTestClient をさらに細かく制御するには、@AutoConfigureWebTestClient アノテーションを使用できます。
通常、@WebFluxTest は @MockBean または @Import と組み合わせて使用され、@Controller Bean に必要なコラボレーターを作成します。
アプリケーション構成全体をロードして WebTestClient を使用する場合は、このアノテーションではなく、@SpringBootTest と @AutoConfigureWebTestClient の組み合わせを検討する必要があります。
AutoConfigureWebFlux, AutoConfigureWebTestClient| 修飾子と型 | オプションの要素と説明 |
|---|---|
ClassSE<?>[] | controllers テストするコントローラーを指定します。 |
ClassSE<?>[] | excludeAutoConfiguration このテストに適用する必要がある自動構成の除外。 |
org.springframework.context.annotation.ComponentScan.Filter[] | excludeFilters それ以外の場合はアプリケーションコンテキストに追加される Bean のフィルタリングに使用できる除外フィルターのセット。 |
org.springframework.context.annotation.ComponentScan.Filter[] | includeFilters 他の方法でフィルタリングされた Bean をアプリケーションコンテキストに追加するために使用できる一連の組み込みフィルター。 |
StringSE[] | properties テストを実行する前に Spring Environment に追加する必要がある key = value 形式のプロパティ。 |
boolean | useDefaultFilters@SpringBootApplication でデフォルトのフィルタリングを使用するかどうかを決定します。 |
ClassSE<?>[] | value テストするコントローラーを指定します。 |
public abstract StringSE[] properties
Environment に追加する必要がある key = value 形式のプロパティ。@AliasFor(value="controllers") public abstract ClassSE<?>[] value
controllers() のエイリアスです。詳細については、controllers() を参照してください。controllers()public abstract boolean useDefaultFilters
@SpringBootApplication でデフォルトのフィルタリングを使用するかどうかを決定します。デフォルトでは、@Controller (明示的な controllers が定義されていない場合)、@ControllerAdvice および WebFluxConfigurer Bean のみが含まれます。includeFilters(), excludeFilters()public abstract org.springframework.context.annotation.ComponentScan.Filter[] includeFilters
public abstract org.springframework.context.annotation.ComponentScan.Filter[] excludeFilters
@AliasFor(annotation=ImportAutoConfiguration.class, attribute="exclude") public abstract ClassSE<?>[] excludeAutoConfiguration
Copyright © 2019 Pivotal Software, Inc.. All rights reserved.