@Target(value={TYPE,METHOD}) @Retention(value=RUNTIME) @Documented @ExtendWith(value=org.junit.jupiter.api.condition.DisabledIfEnvironmentVariableCondition.class) @API(status=STABLE, since="5.1") public @interface DisabledIfEnvironmentVariable
@DisabledIfEnvironmentVariable
is used to signal that the annotated test
class or test method is disabled 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 presence of this annotation will have no effect on whether or not the class or method is 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.
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.
EnabledIfEnvironmentVariable
,
EnabledIfSystemProperty
,
DisabledIfSystemProperty
,
EnabledOnJre
,
DisabledOnJre
,
EnabledOnOs
,
DisabledOnOs
,
EnabledIf
,
DisabledIf
,
Disabled
public abstract String named
System.getenv(String)
public abstract String matches
named()
environment variable.String.matches(String)
,
Pattern
Copyright © 2022. All rights reserved.