アノテーションインターフェース NestedTestConfiguration
@NestedTestConfiguration は、クラス階層を囲む(つまり、内部テストクラスの)Spring Test 構成アノテーションの処理方法を構成するために使用される型レベルのアノテーションです。@NestedTestConfiguration がテストクラス、そのスーパー型階層、その包含クラス階層に存在しないかメタ存在  しない場合、デフォルトの包含構成継承モードが使用されます。ネストされたインターフェースの包含クラスでの @NestedTestConfiguration 宣言は、インターフェースを実装するクラスでアノテーションを検索するときに無視されます。デフォルトモードを変更する方法の詳細については、ENCLOSING_CONFIGURATION_PROPERTY_NAME を参照してください。
INHERIT モードが使用されている場合、包含テストクラスからの構成は、テストクラス継承階層内のセマンティクスと同様に、内部テストクラスによって継承されます。OVERRIDE モードが使用されている場合、内部テストクラスは独自の Spring Test 構成アノテーションを宣言する必要があります。モードを明示的に構成する場合は、内部テストクラスまたはそれを囲むクラスの 1 つに @NestedTestConfiguration(...) アノテーションを付けます。@NestedTestConfiguration(...) 宣言は、スーパークラス階層内およびそれを囲むクラス階層内で継承されることに注意してください。モードを切り替えたい場合を除いて、アノテーションを再宣言する必要はありません。
このアノテーションは、カスタム構成アノテーションを作成するためのメタアノテーションとして使用することができます。
Spring Framework 5.3 の時点で、このアノテーションの使用は通常、JUnit Jupiter の @Nested テストクラスと組み合わせてのみ意味があります。ただし、ネストされたテストクラスをサポートする他のテストフレームワークでも、このアノテーションを利用できる場合があります。
サポートされているアノテーション
Spring TestContext フレームワークは、次のアノテーションの @NestedTestConfiguration セマンティクスを尊重します。
- 導入:
- 5.3
- 作成者:
- Sam Brannen
- 関連事項:
- ネストされたクラスの要約ネストされたクラス修飾子と型クラス説明- static enumクラスを囲むことによるテスト構成が内部テストクラスに対してどのように処理されるかを指示するモードの列挙。
- 必須定数のサマリー必須要素修飾子と型必須要素説明
- フィールドのサマリーフィールド修飾子と型フィールド説明- static final StringSEデフォルトの包含構成継承モードを変更するために使用される JVM システムプロパティ: "spring.test.enclosing.configuration"。
- フィールドの詳細- ENCLOSING_CONFIGURATION_PROPERTY_NAMEデフォルトの包含構成継承モードを変更するために使用される JVM システムプロパティ: "spring.test.enclosing.configuration"。- サポートされている値には、大文字と小文字を区別せずに、 - NestedTestConfiguration.EnclosingConfigurationで定義されている列挙型定数が含まれます。例: コマンドラインから次の JVM システムプロパティを指定することにより、デフォルトを- NestedTestConfiguration.EnclosingConfiguration.OVERRIDEに変更できます。- -Dspring.test.enclosing.configuration=override - プロパティが - OVERRIDEに設定されていない場合、内部テストクラスのテスト構成は、デフォルトで- NestedTestConfiguration.EnclosingConfiguration.INHERITセマンティクスに従って継承されます。- あるいは、 - SpringPropertiesメカニズムを介して構成することもできます。
 
- 要素の詳細