Class Constants


  • @API(status=STABLE,
         since="5.0")
    public final class Constants
    extends Object
    Collection of constants related to the JupiterTestEngine.

    Supported Values for Timeouts

    Values for timeouts must be in the following, case-insensitive format: <number> [ns|μs|ms|s|m|h|d]. The space between the number and the unit may be omitted. Specifying no unit is equivalent to using seconds.

    Value Equivalent annotation
    42 @Timeout(42)
    42 ns @Timeout(value = 42, unit = NANOSECONDS)
    42 μs @Timeout(value = 42, unit = MICROSECONDS)
    42 ms @Timeout(value = 42, unit = MILLISECONDS)
    42 s @Timeout(value = 42, unit = SECONDS)
    42 m @Timeout(value = 42, unit = MINUTES)
    42 h @Timeout(value = 42, unit = HOURS)
    42 d @Timeout(value = 42, unit = DAYS)
    Since:
    5.0
    See Also:
    ConfigurationParameters
    • Field Detail

      • DEACTIVATE_CONDITIONS_PATTERN_PROPERTY_NAME

        public static final String DEACTIVATE_CONDITIONS_PATTERN_PROPERTY_NAME
        Property name used to provide patterns for deactivating conditions: "junit.jupiter.conditions.deactivate"

        Pattern Matching Syntax

        If the property value consists solely of an asterisk (*), all conditions will be deactivated. Otherwise, the property value will be treated as a comma-separated list of patterns where each individual pattern will be matched against the fully qualified class name (FQCN) of each registered condition. Any dot (.) in a pattern will match against a dot (.) or a dollar sign ($) in a FQCN. Any asterisk (*) will match against one or more characters in a FQCN. All other characters in a pattern will be matched one-to-one against a FQCN.

        Examples

        • *: deactivates all conditions.
        • org.junit.*: deactivates every condition under the org.junit base package and any of its subpackages.
        • *.MyCondition: deactivates every condition whose simple class name is exactly MyCondition.
        • *System*: deactivates every condition whose FQCN contains System.
        • *System*, *Dev*: deactivates every condition whose FQCN contains System or Dev.
        • org.example.MyCondition, org.example.TheirCondition: deactivates conditions whose FQCN is exactly org.example.MyCondition or org.example.TheirCondition.
        See Also:
        DEACTIVATE_ALL_CONDITIONS_PATTERN, ExecutionCondition, Constant Field Values
      • DEFAULT_DISPLAY_NAME_GENERATOR_PROPERTY_NAME

        public static final String DEFAULT_DISPLAY_NAME_GENERATOR_PROPERTY_NAME
        Property name used to set the default display name generator class name: "junit.jupiter.displayname.generator.default"

        Supported Values

        Supported values include fully qualified class names for types that implement DisplayNameGenerator.

        If not specified, the default is DisplayNameGenerator.Standard.

        See Also:
        Constant Field Values
      • EXTENSIONS_AUTODETECTION_ENABLED_PROPERTY_NAME

        public static final String EXTENSIONS_AUTODETECTION_ENABLED_PROPERTY_NAME
        Property name used to enable auto-detection and registration of extensions via Java's ServiceLoader mechanism: "junit.jupiter.extensions.autodetection.enabled"

        The default behavior is not to perform auto-detection.

        See Also:
        Constant Field Values
      • DEFAULT_TEST_INSTANCE_LIFECYCLE_PROPERTY_NAME

        public static final String DEFAULT_TEST_INSTANCE_LIFECYCLE_PROPERTY_NAME
        Property name used to set the default test instance lifecycle mode: "junit.jupiter.testinstance.lifecycle.default"

        Supported Values

        Supported values include names of enum constants defined in TestInstance.Lifecycle, ignoring case.

        If not specified, the default is "per_method" which corresponds to @TestInstance(Lifecycle.PER_METHOD).

        See Also:
        TestInstance, Constant Field Values
      • PARALLEL_EXECUTION_ENABLED_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.3")
        public static final String PARALLEL_EXECUTION_ENABLED_PROPERTY_NAME
        Property name used to enable parallel test execution: "junit.jupiter.execution.parallel.enabled"

        By default, tests are executed sequentially in a single thread.

        Since:
        5.3
        See Also:
        Constant Field Values
      • DEFAULT_PARALLEL_EXECUTION_MODE

        @API(status=EXPERIMENTAL,
             since="5.4")
        public static final String DEFAULT_PARALLEL_EXECUTION_MODE
        Property name used to set the default test execution mode: "junit.jupiter.execution.parallel.mode.default"

        This setting is only effective if parallel execution is enabled.

        Supported Values

        Supported values include names of enum constants defined in ExecutionMode, ignoring case.

        If not specified, the default is "same_thread" which corresponds to @Execution(ExecutionMode.SAME_THREAD).

        Since:
        5.4
        See Also:
        Execution, ExecutionMode, Constant Field Values
      • DEFAULT_CLASSES_EXECUTION_MODE_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.5")
        public static final String DEFAULT_CLASSES_EXECUTION_MODE_PROPERTY_NAME
        Property name used to set the default test execution mode for top-level classes: "junit.jupiter.execution.parallel.mode.classes.default"

        This setting is only effective if parallel execution is enabled.

        Supported Values

        Supported values include names of enum constants defined in ExecutionMode, ignoring case.

        If not specified, it will be resolved into the same value as DEFAULT_PARALLEL_EXECUTION_MODE.

        Since:
        5.4
        See Also:
        Execution, ExecutionMode, Constant Field Values
      • PARALLEL_CONFIG_FIXED_PARALLELISM_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.3")
        public static final String PARALLEL_CONFIG_FIXED_PARALLELISM_PROPERTY_NAME
        Property name used to set the desired parallelism for the fixed configuration strategy: "junit.jupiter.execution.parallel.config.fixed.parallelism"

        No default value; must be a positive integer.

        Since:
        5.3
        See Also:
        Constant Field Values
      • PARALLEL_CONFIG_DYNAMIC_FACTOR_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.3")
        public static final String PARALLEL_CONFIG_DYNAMIC_FACTOR_PROPERTY_NAME
        Property name used to set the factor to be multiplied with the number of available processors/cores to determine the desired parallelism for the dynamic configuration strategy: "junit.jupiter.execution.parallel.config.dynamic.factor"

        Value must be a positive decimal number; defaults to 1.

        Since:
        5.3
        See Also:
        Constant Field Values
      • DEFAULT_TIMEOUT_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.5")
        public static final String DEFAULT_TIMEOUT_PROPERTY_NAME
        Property name used to set the default timeout for all testable and lifecycle methods.

        The value of this property will be used unless overridden by a more specific property or a @Timeout annotation present on the method or on an enclosing test class (for testable methods).

        Please refer to the class description for the definition of supported values.

        Since:
        5.5
        See Also:
        Timeout, Constant Field Values
      • TIMEOUT_MODE_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.6")
        public static final String TIMEOUT_MODE_PROPERTY_NAME
        Property used to determine if timeouts are applied to tests: "junit.jupiter.execution.timeout.mode".

        The value of this property will be used to toggle whether @Timeout is applied to tests.

        Supported timeout mode values:

        • enabled: enables timeouts
        • disabled: disables timeouts
        • disabled_on_debug: disables timeouts while debugging

        If not specified, the default is "enabled".

        Since:
        5.6
        See Also:
        Constant Field Values
      • DEFAULT_TEST_METHOD_ORDER_PROPERTY_NAME

        @API(status=EXPERIMENTAL,
             since="5.7")
        public static final String DEFAULT_TEST_METHOD_ORDER_PROPERTY_NAME
        Property name used to set the default method orderer class name: "junit.jupiter.testmethod.order.default"

        Supported Values

        Supported values include fully qualified class names for types that implement MethodOrderer.

        If not specified, test methods will be ordered using an algorithm that is deterministic but intentionally nonobvious.

        See Also:
        Constant Field Values