Configuration Parameters are text-based key-value pairs that can be supplied to test engines running on the JUnit Platform via one of the following mechanisms.

    1. The configurationParameter() and configurationParameters() methods in the LauncherDiscoveryRequestBuilder which is used to build a request supplied to the . When running tests via one of the tools provided by the JUnit Platform you can specify configuration parameters as follows:

    2. JVM system properties.

    3. The JUnit Platform configuration file: a file named junit-platform.properties in the root of the class path that follows the syntax rules for a Java file.

    4.5.1. Pattern Matching Syntax

    This section describes the pattern matching syntax that is applied to the configuration parameters used for the following features.

    If the value for the given configuration parameter consists solely of an asterisk (*), the pattern will match against all candidate classes. Otherwise, the value will be treated as a comma-separated list of patterns where each pattern will be matched against the fully qualified class name (FQCN) of each candidate class. 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.

    • org.junit.*: matches all candidate classes under the org.junit base package and any of its subpackages.

    • : matches every candidate class whose simple class name is exactly MyCustomImpl.

    • *System*: matches every candidate class whose FQCN contains System.

    • *System*+, +*Unit*: matches every candidate class whose FQCN contains System or Unit.

    • org.example.MyCustomImpl: matches the candidate class whose FQCN is exactly org.example.MyCustomImpl.

    • org.example.MyCustomImpl, org.example.TheirCustomImpl: matches candidate classes whose FQCN is exactly or org.example.TheirCustomImpl.