Annotation Type EnabledIfEnvironmentVariable


  • @Target({TYPE,METHOD})
    @Retention(RUNTIME)
    @Documented
    @ExtendWith(org.junit.jupiter.api.condition.EnabledIfEnvironmentVariableCondition.class)
    @API(status=STABLE,
         since="5.1")
    public @interface EnabledIfEnvironmentVariable
    @EnabledIfEnvironmentVariable is used to signal that the annotated test class or test method is only enabled if the value of the specified environment variable matches the specified regular expression.

    When declared at the class level, the result will apply to all test methods within that class as well.

    If a test method is disabled via this annotation, that does not prevent the test class from being instantiated. Rather, it prevents the execution of the test method and method-level lifecycle callbacks such as @BeforeEach methods, @AfterEach methods, and corresponding extension APIs.

    If the specified environment variable is undefined, the annotated class or method will be disabled.

    This annotation may be used as a meta-annotation in order to create a custom composed annotation that inherits the semantics of this annotation.

    Warning

    As of JUnit Jupiter 5.1, this annotation can only be declared once on an AnnotatedElement (i.e., test interface, test class, or test method). If this annotation is directly present, indirectly present, or meta-present multiple times on a given element, only the first such annotation discovered by JUnit will be used; any additional declarations will be silently ignored. Note, however, that this annotation may be used in conjunction with other @Enabled* or @Disabled* annotations in this package.

    Since:
    5.1
    See Also:
    DisabledIfEnvironmentVariable, EnabledIfSystemProperty, DisabledIfSystemProperty, EnabledOnJre, DisabledOnJre, EnabledOnOs, DisabledOnOs, EnabledIf, DisabledIf, Disabled
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      String matches
      A regular expression that will be used to match against the retrieved value of the named() environment variable.
      String named
      The name of the environment variable to retrieve.
    • Element Detail

      • named

        String named
        The name of the environment variable to retrieve.
        Returns:
        the environment variable name; never blank
        See Also:
        System.getenv(String)
      • matches

        String matches
        A regular expression that will be used to match against the retrieved value of the named() environment variable.
        Returns:
        the regular expression; never blank
        See Also:
        String.matches(String), Pattern