アノテーションインターフェース DisabledIf
@DisabledIf は、アノテーション付きのテストクラスまたはテストメソッドが無効になっていることを通知するために使用されます。指定された expression() が true と評価される場合は実行しないでください。クラスレベルで適用すると、そのクラス内のすべてのテストメソッドも自動的に無効になります。
 基本的な例については、expression() の Javadoc を参照してください。
 このアノテーションは、カスタム合成アノテーションを作成するためのメタアノテーションとして使用できます。例: カスタム @DisabledOnMac アノテーションは次のように作成できます。
 @Target({ElementType.TYPE, ElementType.METHOD})
 @Retention(RetentionPolicy.RUNTIME)
 @DisabledIf(
     expression = "#{systemProperties['os.name'].toLowerCase().contains('mac')}",
     reason = "Disabled on Mac OS"
 )
 public @interface DisabledOnMac {}
 @DisabledOnMac は、可能なことの例としてのみ意図されていることに注意してください。その正確な使用例がある場合は、JUnit Jupiter に組み込まれている @DisabledOnOs(MAC) サポートを使用してください。
JUnit 5.7 以降、JUnit Jupiter にも @DisabledIf という名前の条件アノテーションがあります。Spring の @DisabledIf サポートを使用する場合は、正しいパッケージからアノテーション型をインポートするようにしてください。
- 導入:
- 5.0
- 作成者:
- Sam Brannen, Tadaya Tsuyukubo
- 関連事項:
- SpringExtension
- EnabledIf
- Disabled
- DisabledIf
 
- オプション要素の概要オプション要素修飾子と型オプションの要素説明アノテーション付きのテストクラスまたはテストメソッドが無効かどうかを判断するために評価される式。- boolean- expression()を評価するために、現在のテストに関連付けられている- ApplicationContextを積極的にロードする必要があるかどうか。このテストが無効になっている理由。
- 要素の詳細- value- 関連事項:
 - デフォルト:
- ""
 
- expressionアノテーション付きのテストクラスまたはテストメソッドが無効かどうかを判断するために評価される式。- 式が - Boolean.TRUESE または- "true"に等しい- StringSE(大文字と小文字を区別しない)と評価される場合、テストは無効になります。- 式は次のいずれかになります。 - Spring 式言語(SpEL)式 — 例:@DisabledIf("#{systemProperties['os.name'].toLowerCase().contains('mac')}")
- Spring Environmentで利用可能なプロパティのプレースホルダー — 例:@DisabledIf("${smoke.tests.disabled}")
-  テキストリテラル — 例:@DisabledIf("true")
 - ただし、 - @DisabledIf("true")は- @Disabledと同等であり、- @DisabledIf("false")は論理的に無意味であるため、プロパティプレースホルダーの動的解決の結果ではないテキストリテラルは、実際的な値はゼロであることに注意してください。- デフォルト:
- ""
 
- Spring 式言語(SpEL)式 — 例:
- reasonStringSE reasonこのテストが無効になっている理由。- 関連事項:
 - デフォルト:
- ""
 
- loadContextboolean loadContext- expression()を評価するために、現在のテストに関連付けられている- ApplicationContextを積極的にロードする必要があるかどうか。- デフォルトは - falseであるため、テストアプリケーションコンテキストが不必要に読み込まれることはありません。式がシステムプロパティまたは環境変数のみに基づいている場合、またはテストのアプリケーションコンテキストで Bean と相互作用しない場合、テストを無効にしてしまうと時間の浪費になるため、コンテキストを時期尚早にロードする必要はありません。- 関連事項:
 - デフォルト:
- false