TestExecutionResult
for an aborted execution
of a test or container with the supplied throwable
.TestDescriptor
that may be used by
custom TestEngines
.AbstractTestDescriptor
with the supplied
UniqueId
and display name.AbstractTestDescriptor
with the supplied
UniqueId
, display name, and source.TestDescriptor.Visitor
to the subtree starting with this descriptor.Filter
includes the value converted using the supplied
Function
.LogRecordListener
to the set of registered
listeners.engines
to the configuration.listeners
to the configuration.@AfterAll
is used to signal that the annotated method should be
executed after all tests in the current test class.AfterAllCallback
defines the API for Extensions
that wish to provide additional behavior to test containers after all tests
have been invoked.@AfterEach
is used to signal that the annotated method should be
executed after each @Test
,
@RepeatedTest
, @ParameterizedTest
, @TestFactory
,
and @TestTemplate
method in the current test class.AfterEachCallback
defines the API for Extensions
that wish to provide additional behavior to tests after each test method
has been invoked.@AfterEach
method
as a pseudo-extension.AfterTestExecutionCallback
defines the API for Extensions
that wish to provide additional behavior to tests immediately
after each test has been executed.accessor
into a
single object.@AggregateWith
is an annotation that allows one to specify an
ArgumentsAggregator
.Try
is a success, apply the supplied function to its
value and return the resulting Try
; if this Try
is a
failure, do nothing.Try
is a success, apply the supplied transformer to its
value and return a new successful or failed Try
depending on the
transformer's outcome; if this Try
is a failure, do nothing.AnnotationConsumer
is a functional
interface for consuming annotations.AnnotationConsumerInitializer
is an internal helper class for
initializing AnnotationConsumers
.AnnotationSupport
provides static utility methods for common tasks
regarding annotations — for example, checking if a class, method, or
field is annotated with a particular annotation; finding annotations on a
given class, method, or field; finding fields or methods annotated with
a particular annotation, etc.UniqueId
by appending a new UniqueId.Segment
, based
on the supplied segmentType
and value
, to the end of this
UniqueId
.ArgumentAccessException
is an exception thrown by an
ArgumentsAccessor
if an error occurs while accessing
or converting an argument.ArgumentConversionException
is an exception that can occur when an
object is converted to another object by an implementation of an
ArgumentConverter
.ArgumentConverter
is an abstraction that allows an input object to
be converted to an instance of a different class.Arguments
is an abstraction that provides access to an array of
objects to be used for invoking a @ParameterizedTest
method.Arguments
based on
the supplied arguments
.@ParameterizedTest
method:
{arguments}
ArgumentsAccessor
defines the public API for accessing arguments provided
by an ArgumentsProvider
for a single invocation of a
@ParameterizedTest
method.ArgumentsAggregationException
is an exception thrown by an
ArgumentsAggregator
when an error occurs while aggregating
arguments.ArgumentsAggregator
is an abstraction for the aggregation of arguments
provided by an ArgumentsProvider
for a single invocation of a
@ParameterizedTest
method
into a single object.ArgumentsProvider
is responsible for providing a stream of arguments to be passed to a @ParameterizedTest
method.@ArgumentsSource
is a repeatable annotation
that is used to register argument providers
for the annotated test method.@ArgumentsSources
is a simple container for one or more
ArgumentsSource
annotations.Node.before(EngineExecutionContext)
,
Node.execute(EngineExecutionContext, DynamicTestExecutor)
, and
Node.after(EngineExecutionContext)
.executables
do not throw
exceptions.executables
do not throw
exceptions.executables
do not throw
exceptions.executables
do not throw
exceptions.executables
do not throw
exceptions.executables
do not throw
exceptions.expected
and actual
boolean arrays are equal.expected
and actual
boolean arrays are equal.expected
and actual
boolean arrays are equal.expected
and actual
char arrays are equal.expected
and actual
char arrays are equal.expected
and actual
char arrays are equal.expected
and actual
byte arrays are equal.expected
and actual
byte arrays are equal.expected
and actual
byte arrays are equal.expected
and actual
short arrays are equal.expected
and actual
short arrays are equal.expected
and actual
short arrays are equal.expected
and actual
int arrays are equal.expected
and actual
int arrays are equal.expected
and actual
int arrays are equal.expected
and actual
long arrays are equal.expected
and actual
long arrays are equal.expected
and actual
long arrays are equal.expected
and actual
float arrays are equal.expected
and actual
float arrays are equal.expected
and actual
float arrays are equal.expected
and actual
float arrays are equal within the given non-negative delta
.expected
and actual
float arrays are equal within the given non-negative delta
.expected
and actual
float arrays are equal within the given non-negative delta
.expected
and actual
double arrays are equal.expected
and actual
double arrays are equal.expected
and actual
double arrays are equal.expected
and actual
double arrays are equal within the given non-negative delta
.expected
and actual
double arrays are equal within the given non-negative delta
.expected
and actual
double arrays are equal within the given non-negative delta
.expected
and actual
object arrays are deeply equal.expected
and actual
object arrays are deeply equal.expected
and actual
object arrays are deeply equal.executable
does
not throw any kind of exception.executable
does
not throw any kind of exception.executable
does
not throw any kind of exception.supplier
does
not throw any kind of exception.supplier
does
not throw any kind of exception.supplier
does
not throw any kind of exception.ThrowableCollector
is empty (i.e.,
has not collected any Throwables
).expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal within the given non-negative delta
.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.expected
and actual
are equal.condition
is false
.condition
is false
.condition
is false
.booleanSupplier
is false
.booleanSupplier
is false
.booleanSupplier
is false
.Assertions
is a collection of utility methods that support asserting
conditions in tests.expected
and actual
iterables are deeply equal.expected
and actual
iterables are deeply equal.expected
and actual
iterables are deeply equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal
within the given delta
.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.expected
and actual
are not equal.actual
is not null
.actual
is not null
.actual
is not null
.expected
and actual
do not refer to the same object.expected
and actual
do not refer to the same object.expected
and actual
do not refer to the same object.actual
is null
.actual
is null
.actual
is null
.expected
and actual
refer to the same object.expected
and actual
refer to the same object.expected
and actual
refer to the same object.executable
throws
an exception of the expectedType
and returns the exception.executable
throws
an exception of the expectedType
and returns the exception.executable
throws
an exception of the expectedType
and returns the exception.executable
completes before the given timeout
is exceeded.executable
completes before the given timeout
is exceeded.executable
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.executable
completes before the given timeout
is exceeded.executable
completes before the given timeout
is exceeded.executable
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.supplier
completes before the given timeout
is exceeded.condition
is true
.condition
is true
.booleanSupplier
is true
.booleanSupplier
is true
.condition
is true
.booleanSupplier
is true
.Executable
, but only if the supplied
assumption is valid.Executable
, but only if the supplied
assumption is valid.Assumptions
is a collection of utility methods that support
conditional test execution based on assumptions.@BeforeAll
is used to signal that the annotated method should be
executed before all tests in the current test class.BeforeAllCallback
defines the API for Extensions
that wish to provide additional behavior to test containers before all tests
are invoked.BeforeAllCallback
extensions.@BeforeAll
methods.@BeforeEach
is used to signal that the annotated method should be
executed before each @Test
,
@RepeatedTest
, @ParameterizedTest
, @TestFactory
,
and @TestTemplate
method in the current test class.BeforeEachCallback
defines the API for Extensions
that wish to provide additional behavior to tests before each test is invoked.@BeforeEach
method
as a pseudo-extension.BeforeTestExecutionCallback
defines the API for Extensions
that wish to provide additional behavior to tests immediately
before each test is executed.LauncherConfig
that has been configured via this
builder.LauncherDiscoveryRequest
that has been configured via
this builder.ClassFilter
by combining the name predicate built by
ClasspathScanningSupport.buildClassNamePredicate(EngineDiscoveryRequest)
and the passed-in
class predicate.Predicate
for fully qualified class names to be used for
classpath scanning from an EngineDiscoveryRequest
.LauncherConfig.Builder
.JupiterConfiguration
API.Callable
and return a successful Try
that contains the returned value or, in case an exception was thrown, a
failed Try
that contains the exception.System.err
:
"junit.platform.output.capture.stderr"System.out
:
"junit.platform.output.capture.stdout"TestDescriptor
.DiscoveryFilter
that is applied to the name of a Class
.DiscoverySelector
that selects the name of a classpath resource
so that TestEngines
can load resources
from the classpath — for example, to load XML or JSON files from the classpath,
potentially within JARs.TestSource
with an optional position.DiscoverySelector
that selects a classpath root so that
TestEngines
can search for class
files or resources within the physical classpath — for example, to
scan for test classes.DiscoverySelector
that selects a Class
or class name so
that TestEngines
can discover
tests or containers based on classes.TestSource
with
an optional file position.ClassSupport
provides static utility methods for common tasks
regarding classes — for example, generating a
comma-separated list of fully qualified class names for a set of supplied
classes.TestDescriptor
for tests based on Java classes.classes
.context
after execution.log records
that have been
submitted to this listener by the
current thread.ExtensionContext.Store.CloseableResource
.Collections
.filters
include it.filters
include it.CompositeTestSource
contains one or more TestSources
.predicate
is true
.predicate
is true
.ConditionEvaluator
evaluates ExecutionCondition
extensions.messageSupplier
at config level.Throwable
and message from the provided
messageSupplier
at config level.ParallelExecutionConfigurationStrategy
to be used by the
DefaultParallelExecutionConfigurationStrategy.CUSTOM
configuration strategy.DefaultParallelExecutionConfigurationStrategy.DYNAMIC
configuration strategy.DefaultParallelExecutionConfigurationStrategy.FIXED
configuration strategy.TestEngines
may use to
influence test discovery and execution.JupiterTestEngine
.String
contains any ISO control characters.null
elements.null
elements.null
elements.null
elements.String
contains any whitespace characters.source
object according to the supplied
context
.source
object into to the supplied
targetType
.@ConvertWith
is an annotation that allows one to specify an explicit
ArgumentConverter
.TestIdentifiers
that satisfy the
given predicate.parts
for creating a namespace.ThrowableCollector
.TestTag
from the supplied name
.Launcher
using automatic
registration for test engines and test execution listeners.Launcher
using the supplied
LauncherConfig
.ConfigurationParameters
.ThrowableCollector
that treats instances of the
OTA's TestAbortedException
and JUnit 4's
org.junit.AssumptionViolatedException
as aborting.ThrowableCollector
instances used to handle exceptions that occur
during execution of this engine's tests.@CsvFileSource
is an ArgumentsSource
which is used to load
comma-separated value (CSV) files from one or more classpath resources
.@CsvSource
is an ArgumentsSource
which reads
comma-separated values (CSV) from one or more supplied
CSV lines.@RepeatedTest
method: {currentRepetition}
messageSupplier
at debug level.Throwable
and message from the provided
messageSupplier
at debug level.@ParameterizedTest
method: "[{index}] {arguments}"Nashorn
.DefaultArgumentConverter
is the default implementation of the
ArgumentConverter
API.ArgumentsAccessor
API.JupiterConfiguration
API.Object
to a default String
representation using the following algorithm.DiscoverySelector
that selects a directory so that
TestEngines
can discover tests or containers based on directories in the
file system.TestSource
.@Disabled
is used to signal that the annotated test class or
test method is currently disabled and should not be executed.@DisabledIf
is used to determine whether the annotated test class or
test method is disabled by evaluating a script.@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.@DisabledIfSystemProperty
is used to signal that the annotated test
class or test method is disabled if the value of the specified
system property matches the specified
regular expression.@DisabledOnJre
is used to signal that the annotated test class or
test method is disabled on one or more specified Java
Runtime Environment (JRE) versions.@DisabledOnOs
is used to signal that the annotated test class or
test method is disabled on one or more specified
operating systems.EngineDiscoveryRequest
.TestPlan
according to the supplied
LauncherDiscoveryRequest
by querying all registered engines and
collecting their results.DiscoveryFilter
is applied during test discovery to determine if
a given container or test should be included in the test plan.TestEngine
can use to discover tests
— for example, the name of a Java class, the path to a file or
directory, etc.DiscoverySelectorResolver
resolves TestDescriptors
for containers and tests selected by DiscoverySelectors with the help of the
JavaElementsResolver
.static
factory methods for creating
DiscoverySelectors
.@DisplayName
is used to declare a custom display
name for the annotated test class or test method.@DisplayNameGeneration
is used to declare a custom display name
generator for the annotated test class.DisplayNameGenerator
defines the SPI for generating display
names programmatically.String
does not contain any ISO control
characters.String
does not contain any whitespace
characters.DynamicContainer
is a container generated at runtime.DynamicContainer
for the supplied display
name and collection of dynamic nodes.DynamicContainer
for the supplied display
name and stream of dynamic nodes.DynamicContainer
for the supplied display
name, custom test source URI
, and stream of dynamic nodes.TestDescriptors
that
implement Filterable
.DynamicNode
serves as the abstract base class for a container or a
test case generated at runtime.DynamicTest
is a test case generated at runtime.DynamicTest
for the supplied display
name and executable code block.DynamicTest
for the supplied display
name, custom test source URI
, and executable code block.TestDescriptor
has been
registered.TestIdentifier
has been registered.@EmptySource
is an ArgumentsSource
which provides a single
empty argument to the annotated @ParameterizedTest
method.@EnabledIf
is used to determine whether the annotated test class or
test method is enabled by evaluating a script.@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.@EnabledIfSystemProperty
is used to signal that the annotated test
class or test method is only enabled if the value of the specified
system property matches the specified
regular expression.@EnabledOnJre
is used to signal that the annotated test class or
test method is only enabled on one or more specified Java
Runtime Environment (JRE) versions.@EnabledOnOs
is used to signal that the annotated test class or
test method is only enabled on one or more specified
operating systems.EnableJUnit4MigrationSupport
is a class-level annotation that
enables all JUnit 4 migration support within JUnit Jupiter.EngineDescriptor
with the supplied UniqueId
and display name.EngineDiscoveryRequest
provides a TestEngine
access to the
information necessary to discover tests and containers.HierarchicalTestEngine
and its collaborators.EngineFilter
is applied to all TestEngines
before they are used.messageSupplier
at error level.Throwable
and message from the provided
messageSupplier
at error level.ExecutionCondition
extensions registered for the
supplied ExtensionContext
.ExtensionContext
.@Ignore
is present on
the test class or method.ClassNameFilter
based on the
supplied patterns.@ExcludeClassNamePatterns
specifies regular expressions that are used
to match against fully qualified class names when running a test suite on the
JUnit Platform.EngineFilter
based on the
supplied engine IDs.EngineFilter
based on the
supplied engine IDs.@ExcludeEngines
specifies the IDs of
TestEngines
to be excluded
when running a test suite on the JUnit Platform.PackageNameFilter
based on the
supplied package names.PackageNameFilter
based on the
supplied package names.@ExcludePackages
specifies the packages to be
excluded when running a test suite on the JUnit Platform.@ExcludeTags
specifies the
tags or tag expressions to be excluded when running a
test suite on the JUnit Platform.ExclusiveResource
.LockMode
translates to the respective ReadWriteLock
locks.Executable
is a functional interface that can be used to
implement any generic block of code that potentially throws a
Throwable
.ExecutableInvoker
encapsulates the invocation of a
Executable
(i.e., method or constructor),
including support for dynamic resolution of method parameters via
ParameterResolvers
.request
's
root and notify
its execution
listener of test execution events.Throwable
that signals abortion or failure.ThrowableCollector.Executable
and collect any Throwable
thrown during the execution.ExecutionRequest
.TestPlan
which is built according to the supplied
LauncherDiscoveryRequest
by querying all registered engines and
collecting their results, and notify
registered listeners about
the progress and results of the execution.TestPlan
and notify
registered listeners about
the progress and results of the execution.Executable
and
mask any
exception thrown as an unchecked exception.SingleTestExecutor.Executable
and return a
TestExecutionResult
based on the outcome.@Execution
is used to configure the parallel execution
mode of a test class or test method.ExecutionCondition
defines the Extension
API for
programmatic, conditional test execution.TestPlan
has finished, regardless of the outcome.TestEngine
access to the information necessary to
execute its tests.TestPlan
has been skipped.TestPlan
is about to be started.Extension
provides native support for the
ExpectedException
rule from JUnit 4.@ExtendWith
is a repeatable annotation
that is used to register extensions for the
annotated test class or test method.ExtensionContext
encapsulates the context in which the
current test or container is being executed.Namespace
is used to provide a scope for data saved by
extensions within a ExtensionContext.Store
.Store
provides methods for extensions to save and retrieve data.ExtensionContext.Store.CloseableResource.close()
some underlying resource or resources when the enclosing Store
is closed.ExtensionContext
or ExtensionContext.Store
.ExtensionRegistry
holds all registered extensions (i.e.@Extensions
is a container for one or more @ExtendWith
declarations.ServiceLoader
mechanism: "junit.jupiter.extensions.autodetection.enabled"ExtensionValuesStore
is used inside implementations of
ExtensionContext
to store and retrieve values.Extension
provides native support for subclasses of
the ExternalResource
rule from JUnit 4.message
.message
as well
as the underlying cause
.cause
.messageSupplier
.TestExecutionResult
for a failed execution
of a test or container with the supplied throwable
.Try
.DiscoverySelector
that selects a file so that
TestEngines
can discover tests or containers based on files in the
file system.TestSource
with an optional
position.TestSource
.Filter
can be applied to determine if an object should be
included or excluded in a result set.Filterable
is implemented by
TestDescriptors
that may
register dynamic tests during execution and support selective test execution.Filter
.filters
to the request.root
that match the specified classFilter
and classNameFilter
predicates.moduleName
that match the specified classFilter
and classNameFilter
predicates.basePackageName
that match the specified classFilter
and classNameFilter
predicates.annotationType
, using top-down search semantics within the type
hierarchy.annotationType
and match the specified predicate
, using
the supplied hierarchy traversal mode.annotationType
and match the specified predicate
, using
top-down search semantics within the type hierarchy.annotationType
and match the specified predicate
.instance
that are annotated or meta-annotated with the
specified annotationType
, using top-down search semantics within
the type hierarchy.annotationType
, using top-down search semantics within
the type hierarchy.instance
that are declared to be of the specified fieldType
and are annotated or meta-annotated with the specified
annotationType
, using top-down search semantics within the type
hierarchy.fieldType
and are annotated or meta-annotated with the
specified annotationType
, using top-down search semantics within
the type hierarchy.annotationType
.annotationType
that is either
present or meta-present on the Parameter
for
this context.annotationType
that is either
present or meta-present on the Method
for
this descriptor.annotationType
that is either
present or meta-present on the supplied optional
element
.annotationType
that is either
directly present, meta-present, or indirectly
present on the supplied element
.predicate
.Method
of the supplied class or interface that
meets the specified criteria, beginning with the specified class or
interface and traversing up the type hierarchy until such a method is
found or the type hierarchy is exhausted.Method
of the supplied class or interface that
meets the specified criteria, beginning with the specified class or
interface and traversing up the type hierarchy until such a method is
found or the type hierarchy is exhausted.predicate
.predicate
, using top-down search semantics
within the type hierarchy.public
fields of the supplied class
or interface that are declared to be of the specified fieldType
and are annotated or meta-annotated with the specified
annotationType
.annotationType
that are either present or
meta-present on the Parameter
for this context.annotationType
that are either present or
meta-present on the Method
for this descriptor.annotationType
that are either present, indirectly
present, or meta-present on the supplied AnnotatedElement
.LoggingListener
which delegates to the supplied
BiConsumer
for consumption of logging messages.engineId
using the default
format.ForkJoinPool
-based
executor service that executes
test tasks with the configured parallelism.ForkJoinPoolHierarchicalTestExecutorService
based on
the supplied ConfigurationParameters
.ReportEntry
from a map of key-value pairs.ReportEntry
from a key-value pair.ClasspathResourceSource
using the supplied classpath
resource name.ClasspathResourceSource
using the supplied classpath
resource name and FilePosition
.ClasspathResourceSource
from the supplied URI
.ClassSource
using the supplied class name.ClassSource
using the supplied class name and
file position.ClassSource
using the supplied class.CompositeTestSource
based on the supplied
collection of sources
.DirectorySource
using the supplied
directory.FilePosition
using the supplied line
number
and an undefined column number.FilePosition
using the supplied line
and
column
numbers.FileSource
using the supplied file
.MethodSource
using the supplied class name and
method name.MethodSource
using the supplied class name, method
name, and method parameter types.MethodSource
using the supplied method
.PackageSource
using the supplied Java Package
.PackageSource
using the supplied packageName
.UriSource
using the supplied URI
.TestIdentifier
from a TestDescriptor
.TestPlan
from the supplied collection of
TestDescriptors
.FilePosition
by parsing the supplied
query
string.Functions
,
Predicates
, etc.static
nested test class.@Nested
inner test class.key
.key
.Object
.@ParameterizedTest
method.Try
is a success, get the contained value; if this
Try
is a failure, throw the contained exception.key
.key
using the specified transformer
.Launcher
.Launcher
.Class
, including itself.junit-jupiter-engine
as the artifact ID.junit-vintage-engine
as the artifact ID.type
using the
supplied function
.Optional
if the attribute was not found.Boolean
,
performing automatic type conversion as necessary.key
.Byte
,
performing automatic type conversion as necessary.Character
,
performing automatic type conversion as necessary.TestIdentifier
.TestIdentifier
using the
supplied TestPlan
.URI
.FilePosition
, if available.key
.key
.ConfigurationParameters
for this request.ConfigurationParameters
that the engine may use to
influence test execution.@RepeatedTest
method.Constructor
for the supplied class.ExecutionMode
for the test class
configured with this MethodOrderer
.ExecutionMode
for the test class.TestIdentifier
(i.e.,
all of its children and their children, recursively).File
.DynamicNode
.Double
,
performing automatic type conversion as necessary.AnnotatedElement
corresponding to the current extension
context, if available.EngineExecutionListener
to be notified of test execution
events.EngineFilters
for this request.UniqueId
, if available.Throwable
causing the failure.executable
code block associated with this DynamicTest
.ExtensionContext
, if available.Extensions
of the specified type that are present
in this registry or one of its ancestors.File
.DiscoveryFilters
for this request, filtered
by a particular type.Float
,
performing automatic type conversion as necessary.org.junit.jupiter
as the group ID.org.junit.vintage
as the group ID.Parameter
for this context within the
parameter list of the Executable
that
declares the parameter.Integer
,
performing automatic type conversion as necessary.Class
.Method
.FilePosition
.Logger
for the specified class.Long
,
performing automatic type conversion as necessary.String
,
typically a comma-separated list of primitive types, fully qualified
class names, or array types.type
that is present in this
Store
(keyed by type
); and otherwise invoke
the default constructor for type
to generate the object,
store it, and return it.key
.key
.Parameter
for this context.TestIdentifier
.FilePosition
, if available.FilePosition
, if available.PostDiscoveryFilters
for this request.Class
associated with the current test
or container.Method
associated with the current test
or container.Extensions
of the specified type that are present
in this registry or one of its ancestors, in reverse order.ExtensionContext
.TestIdentifiers
for this test plan.TestDescriptor
of the engine that processes this
request.UniqueId
.DiscoverySelectors
for this request,
filtered by a particular type.Short
,
performing automatic type conversion as necessary.CompositeTestSource
.ExtensionContext.Store
for the supplied ExtensionContext.Namespace
.String
,
performing automatic type conversion as necessary.Executable
that declares the Parameter
for this context will
be invoked, if available.Class
associated with the current test or container,
if available.Class
associated with the current test or container, if available.TestIdentifier
with the supplied unique ID.TestInstance.Lifecycle
of the test
instance associated with the current test or container, if available.Method
associated with the current test, if available.Method
associated with the current test or container, if available.URI
of this DynamicNode
.Throwable
collected by this
ThrowableCollector
.ReportEntry
was created.@RepeatedTest
method.TestDescriptor.Type.CONTAINER
.TestDescriptor.Type
of this descriptor.UniqueId
.URI
.URI
that represents this source.throwable
.UniqueId
is a prefix for this
UniqueId
.TestEngine
implementations that wish
to organize test suites hierarchically based on the Node
abstraction.Try
is a failure, call the supplied Consumer
with
the contained exception; otherwise, do nothing.Try
is a success, call the supplied Consumer
with
the contained value; otherwise, do nothing.ExecutionCondition
that supports JUnit 4's @Ignore
annotation.ClassNameFilter
based on the
supplied patterns.@IncludeClassNamePatterns
specifies regular expressions that are used
to match against fully qualified class names when running a test suite on the
JUnit Platform.EngineFilter
based on the
supplied engine IDs.EngineFilter
based on the
supplied engine IDs.@IncludeEngines
specifies the IDs of
TestEngines
to be included
when running a test suite on the JUnit Platform.PackageNameFilter
based on the
supplied package names.PackageNameFilter
based on the
supplied package names.@IncludePackages
specifies the packages to be
included when running a test suite on the JUnit Platform.@IncludeTags
specifies the
tags or tag expressions to be included when running a
test suite on the JUnit Platform.@ParameterizedTest
method (1-based): {index}
messageSupplier
at info level.Throwable
and message from the provided
messageSupplier
at info level.static
method with dynamic parameter resolution.abstract
.abstract
.annotationType
is either
present or meta-present on the Parameter
for
this context.annotationType
is either
present or meta-present on the Method
for
this descriptor.annotationType
is either
present or meta-present on the supplied optional
element
.annotationType
is either
present or meta-present on the supplied
element
.annotationType
is either
present or meta-present on the supplied optional
element
.annotationType
is either
present or meta-present on the supplied
element
.String
is blank (i.e.,
null
or consisting only of whitespace characters).ThrowableCollector
is empty (i.e.,
has not collected any Throwables
).@Nested
test class.ThrowableCollector
is not empty (i.e.,
has collected at least one Throwable
).private
.private
.static
.static
.private
.private
.public
.public
.static
.static
.ServiceLoader
mechanism and
automatically registered.ServiceLoader
mechanism and
automatically registered.@TestFactory
method.@Test
method.@TestTemplate
method.@JavaTimeConversionPattern
is an annotation that allows a date/time
conversion pattern to be specified on a parameter of a
@ParameterizedTest
method.RuntimeExceptions
thrown
by JUnit.Runner
which runs tests on the JUnit Platform in a
JUnit 4 environment.TestEngine
.ThrowableCollectors
within
the JUnit Jupiter test engine.Launcher
API is the main entry point for client code that
wishes to discover and execute tests using one or more
test engines.LauncherConfig
defines the configuration API for creating
Launcher
instances via the LauncherFactory
.LauncherConfig
.Launcher
.LauncherDiscoveryRequest
extends the EngineDiscoveryRequest
API
with additional filters that are applied by the Launcher
itself.LauncherDiscoveryRequestBuilder
provides a light-weight DSL for
generating a LauncherDiscoveryRequest
.Launcher
instances by invoking LauncherFactory.create()
or LauncherFactory.create(LauncherConfig)
.LegacyXmlReportGeneratingListener
is a TestExecutionListener
that
generates a separate XML report for each root
in the TestPlan
.ReflectionSupport.tryToLoadClass(String)
instead.ReflectionUtils.tryToLoadClass(String)
instead.ReflectionUtils.tryToLoadClass(String, ClassLoader)
instead.Logger
API serves as a simple logging facade for
java.util.logging
(JUL).Logger
facade for JUL.TestExecutionListener
for logging informational messages
for all events via a BiConsumer
that consumes Throwable
and Supplier<String>
.LogRecordListener
is only intended for testing purposes within
JUnit's own test suite.LogRecord
that was submitted to JUL for
processing.TestDescriptors
based on Java methods.MethodDescriptor
encapsulates functionality for a given Method
.MethodOrderer
defines the API for ordering the test methods
in a given test class.MethodOrderer
that sorts methods alphanumerically based on their
names using String.compareTo(String)
.MethodOrderer
that sorts methods based on the @Order
annotation.MethodOrderer
that orders methods pseudo-randomly and allows for
concurrent execution by default.MethodOrdererContext
encapsulates the context in which
a MethodOrderer
will be invoked.DiscoverySelector
that selects a Method
or a combination of
class name, method name, and parameter types so that
TestEngines
can discover tests
or containers based on methods.@MethodSource
is an ArgumentsSource
which provides access
to values returned from factory methods of the class in
which this annotation is declared or from static factory methods in external
classes referenced by fully qualified method name.TestSource
.ModifierSupport
provides static utility methods for working with
class and member modifiers —
for example, to determine if a class or member is declared as
public
, private
, abstract
, static
, etc.DiscoverySelector
that selects a module name so that
TestEngines
can discover
tests or containers based on modules.java.lang.Module
and friends.@Nested
is used to signal that the annotated class is a nested,
non-static test class (i.e., an inner class) that can share
setup and state with an instance of its enclosing class.TestDescriptor
for tests based on nested (but not static) Java classes.Class
by invoking
the constructor whose argument list matches the types of the supplied
arguments.T
by invoking the supplied constructor
with the supplied arguments.Node
.context
should be skipped.TestMethodTestDescriptor.nodeFinished(org.junit.jupiter.engine.execution.JupiterEngineExecutionContext, org.junit.platform.engine.TestDescriptor, org.junit.platform.engine.TestExecutionResult)
as a no-op, since
the TestWatcher
API is not supported for @TestFactory
containers.testSuccessful()
,
testAborted()
, or
testFailed()
on each
registered TestWatcher
according to the status of the supplied
TestExecutionResult
, in reverse registration order.TestMethodTestDescriptor.nodeSkipped(org.junit.jupiter.engine.execution.JupiterEngineExecutionContext, org.junit.platform.engine.TestDescriptor, org.junit.platform.engine.support.hierarchical.Node.SkipResult)
as a no-op, since
the TestWatcher
API is not supported for @TestFactory
containers.TestWatcher.testDisabled(ExtensionContext, Optional)
on each
registered TestWatcher
, in registration order.String
is not blank.String
is not blank.null
nor empty.null
nor empty.Collection
is neither null
nor empty.Collection
is neither null
nor empty.Object
is not null
.Object
is not null
.@NullAndEmptySource
is a composed annotation that combines
the functionality of @NullSource
and
@EmptySource
.Object
to a String
using the
following algorithm.@NullSource
is an ArgumentsSource
which provides a single
null
argument to the annotated @ParameterizedTest
method.Arguments
based on
the supplied arguments
.ClassFilter
instance that accepts all names but filters classes.ClassFilter
instance that filters by names and classes.ThrowableCollector
that treats instances of
TestAbortedException
as aborting.@Order
is an annotation that is used to configure the
order in which the annotated element (i.e., field or
method) should be evaluated or executed relative to other elements of the
same category.MethodOrdererContext
alphanumerically based on their names
and formal parameter lists.MethodOrdererContext
based on the @Order
annotation.MethodOrdererContext
.MethodOrdererContext
pseudo-randomly.Try
is a failure, call the supplied supplier and return
the resulting Try
; if this Try
is a success, do nothing.Try
is a failure, call the supplied action and return a
new successful or failed Try
depending on the action's outcome;
if this Try
is a success, do nothing.@Ignore
annotation) within JUnit
Jupiter.ArgumentConverter
implementations and the corresponding
@ConvertWith
annotation.ArgumentsProvider
implementations and their corresponding
ArgumentsSource
annotations.ConfigurationParameters
-related support
classes intended to be used by test engine implementations.TestDescriptor
-related support classes
intended to be used by test engine implementations and clients of
the launcher.Filter
-related support classes intended to be
used by test engine implementations.TestEngine
that wishes to organize test suites
hierarchically based on the
Node
abstraction.Launcher
including the LauncherFactory
and the LauncherDiscoveryRequestBuilder
.TestExecutionListener
implementations and related support classes for
the Launcher
.Runner
and annotations for configuring and executing tests on the
JUnit Platform in a JUnit 4 environment.DiscoveryFilter
that is applied to the name of a Package
.DiscoverySelector
that selects a package name so that
TestEngines
can discover
tests or containers based on packages.TestSource
.ParallelExecutionConfigurationStrategy
to be used for the
custom
configuration strategy: "junit.jupiter.execution.parallel.config.custom.class"dynamic
configuration strategy: "junit.jupiter.execution.parallel.config.dynamic.factor"fixed
configuration strategy: "junit.jupiter.execution.parallel.config.fixed.parallelism"ParallelExecutionConfigurationStrategy
: "junit.jupiter.execution.parallel.config.strategy"ParameterContext
encapsulates the context in which an
Executable
will be invoked for a given
Parameter
.@ParameterizedTest
is used to signal that the annotated method is a
parameterized test method.ParameterResolver
.ParameterResolver
defines the API for Extensions
that wish to dynamically resolve arguments for parameters
at runtime.UniqueId
from the supplied string representation using the
default format.TagExpression
from the supplied tag
expression string.String[]
with the following content.TagExpression
.PostDiscoveryFilter
is applied to TestDescriptors
after test discovery.ConfigurationParameters
that applies a supplied prefix to all
queries.ConfigurationParameters
that
applies the supplied prefix to all queries.context
prior to execution.PrintWriter
.PrintWriter
.context
.org.junit.platform.engine.EngineExecutionListener
in order to
supply additional information to the reporting infrastructure.org.junit.platform.engine.EngineExecutionListener
in order to
supply additional information to the reporting infrastructure.org.junit.platform.engine.EngineExecutionListener
in order to
supply additional information to the reporting infrastructure.value
for later retrieval under the supplied key
.MethodOrderer
: "junit.jupiter.execution.order.random.seed"ReflectionUtils.tryToReadFieldValue(Class, String, Object)
instead.ReflectionUtils.tryToReadFieldValue(Field)
instead.ReflectionUtils.tryToReadFieldValue(Field, Object)
instead.predicate
.Throwable
into a String.ReflectionSupport
provides static utility methods for common
reflection tasks — for example, scanning for classes in the class-path
or module-path, loading classes, finding methods, invoking methods, etc.@RegisterExtension
is used to register an Extension
via a
field in a test class.Extension
in this registry, without checking
if an extension of that type already exists in this registry.key
.key
.LogRecordListener
from the set of registered
listeners.@RepeatedTest
is used to signal that the annotated method is a
test template method that should be repeated a specified number of times with a configurable display
name.RepetitionInfo
is used to inject information about the current
repetition of a repeated test into @RepeatedTest
, @BeforeEach
,
and @AfterEach
methods.String
.String
.ReportEntry
encapsulates a time-stamped map of String
-based
key-value pairs to be published to the reporting infrastructure.TestDescriptor
in order to publish additional
information to the reporting infrastructure — for example:
Output that would otherwise go to System.out
Information about test context or test data
TestIdentifier
.LauncherDiscoveryRequestBuilder
.Parameter
in the supplied ParameterContext
for the supplied ExtensionContext
.@ResourceLock
is used to declare that the annotated test class or test
method requires access to a shared resource identified by a key.@ResourceLocks
is a container for one or more
@ResourceLock
declarations.exception
if it is
blacklisted.segmentType
and
value
using the default format.ExecutionCondition
.ClassSelector
for the supplied Class
.ClassSelector
for the supplied class name.@SelectClasses
specifies the classes to select when running
a test suite on the JUnit Platform.ClasspathResourceSelector
for the supplied classpath
resource name.ClasspathRootSelectors
for the supplied
classpath roots (directories or JAR files).DirectorySelector
for the supplied directory path.DirectorySelector
for the supplied directory.FileSelector
for the supplied file path.FileSelector
for the supplied file.MethodSelector
for the supplied fully qualified
method name.MethodSelector
for the supplied class name and method name.MethodSelector
for the supplied class name, method name,
and method parameter types.MethodSelector
for the supplied Class
and method name.MethodSelector
for the supplied Class
, method name,
and method parameter types.ModuleSelector
for the supplied module name.ModuleSelectors
for the supplied module names.selectors
to the request.selectors
to the request.PackageSelector
for the supplied package name.@SelectPackages
specifies the names of packages to select
when running a test suite on the JUnit Platform.UniqueIdSelector
for the supplied UniqueId
.UniqueIdSelector
for the supplied unique ID.UriSelector
for the supplied URI.UriSelector
for the supplied URI
.context
should be
skipped.SimpleArgumentConverter
is an abstract base class for ArgumentConverter
implementations.SingleTestExecutor
.ConfigurationParameters
.System.err
as part of a
ReportEntry
: "stderr"System.out
as part of a
ReportEntry
: "stdout"Extensions
of the specified type that are present
in this registry or one of its ancestors.log records
that have been
submitted to this listener by the
current thread.log records
that have been
submitted to this listener by the current
thread at the given log level.log records
that have been
submitted to this listener by the current
thread for the logger name equal to the name of the given class.log records
that have been
submitted to this listener by the current
thread for the logger name equal to the name of the given class at the given
log level.Strings
,
CharSequences
, etc.Try
.TestExecutionResult
for a successful execution
of a test or container.@SuiteDisplayName
is used to declare a custom
display name for the annotated test class that is executed as a test suite
on the JUnit Platform.TestExecutionListener
that generates a
summary of the test execution.Parameter
in the supplied ParameterContext
for the supplied
ExtensionContext
.context
.@Tag
is a repeatable annotation that is
used to declare a tag for the annotated test class or test method.TagExpression
, if any.TagExpression
or throw an exception with the
contained parse error.PostDiscoveryFilters
based on included and excluded tags or tag expressions.@Tags
is a container for one or more @Tag
declarations.@Test
is used to signal that the annotated method is a
test method.@Testable
is used to signal to IDEs and tooling vendors that the
annotated or meta-annotated element is testable.TestEngine
.TestDescriptors
.TestDescriptor
structure.TestEngine
facilitates discovery and execution of
tests for a particular programming model.TestExecutionExceptionHandler
defines the API for Extensions
that wish to handle exceptions thrown during test execution.Launcher
to be notified of events that occur during test execution.TestExecutionResult
encapsulates the result of executing a single test
or container.@TestFactory
is used to signal that the annotated method is a
test factory method.TestDescriptor
for
@TestFactory
methods.TestPlan
.TestInfo
is used to inject information about the current test or
container into to @Test
, @RepeatedTest
,
@ParameterizedTest
, @TestFactory
, @BeforeEach
,
@AfterEach
, @BeforeAll
, and @AfterAll
methods.@TestInstance
is a type-level annotation that is used to configure
the lifecycle of test instances for the annotated
test class or test interface.TestInstanceFactoryContext
encapsulates the context in which
a test class is to be instantiated by a
TestInstanceFactory
.TestInstancePostProcessor
defines the API for Extensions
that wish to post-process test instances.TestInstances
encapsulates the test instances of a test.TestInstanceFactory
.@TestMethodOrder
is a type-level annotation that is used to configure
a MethodOrderer
for the test methods of the annotated
test class or test interface.TestDescriptor
for @Test
methods.TestPlan
describes the tree of tests and containers as discovered
by a Launcher
.TestPlan
has finished,
after all tests have been executed.TestPlan
has started,
before any test has been executed.TestReporter
can be injected into
@BeforeEach
and @AfterEach
lifecycle
methods as well as methods annotated with @Test
,
@RepeatedTest
,
@ParameterizedTest
,
@TestFactory
, etc.@TestTemplate
is used to signal that the annotated method is a
test template method.TestTemplateInvocationContext
represents the context of a
single invocation of a test
template.TestTemplateInvocationContextProvider
defines the API for
Extensions
that wish to provide one or multiple contexts
for the invocation of a
@TestTemplate
method.TestDescriptor
for a @TestTemplate
invocation.TestDescriptor
for @TestTemplate
methods.TestWatcher
defines the API for Extensions
that
wish to process test results.Throwable
.Throwable
.ThrowableCollector
instances.Throwable
, masked as an
unchecked exception.ThrowingConsumer
is a functional interface that can be used to
implement any generic block of code that consumes an argument and
potentially throws a Throwable
.ThrowingSupplier
is a functional interface that can be used to
implement any generic block of code that returns an object and
potentially throws a Throwable
.Try
is a failure, return an empty Optional
; if
this Try
is a success, wrap the contained value using
Optional.ofNullable(Object)
.Stream
.UniqueId
using the configured UniqueIdFormat
.toString()
.@RepeatedTest
method: {totalRepetitions}
Collector
that accumulates the input elements into a
new unmodifiable list, in encounter order.messageSupplier
at trace level.Throwable
and message from the provided
messageSupplier
at trace level.S
to type T
.Method
in the specified class with the specified
name and parameter types.ClassLoader
.ClassLoader
.UniqueId
encapsulates the creation, parsing, and display of unique IDs
for TestDescriptors
.UniqueId
comprises a type and a
value.DiscoverySelector
that selects a UniqueId
so that
TestEngines
can discover
tests or containers based on unique IDs.DiscoverySelector
that selects a URI
so that
TestEngines
can discover tests or containers based on URIs.TestSource
that can be represented as a URI
.@UseTechnicalNames
specifies that technical names should be
used instead of display names when running a test suite on the
JUnit Platform.@ValueSource
is an ArgumentsSource
which provides access to
an array of literal values.Extension
provides native support for subclasses of
the Verifier
rule from JUnit 4.TestEngine
.TestDescriptor
.messageSupplier
at warning level.Throwable
and message from the provided
messageSupplier
at warning level.Copyright © 2021. All rights reserved.