New API
Show API added in:
Contents
- Modules
- Packages
- Interfaces
- Classes
- Enum Classes
- Exception Classes
- Annotation Interfaces
- Fields
- Methods
- Constructors
- Enum Constants
- Annotation Interface Elements
-
New ModulesModuleAdded inDescription5.4Aggregates all JUnit Jupiter modules.1.4Defines the JUnit Platform Reporting API.1.8Aggregates all JUnit Platform Suite modules.1.8Provides a
TestEnginefor running declarative test suites.1.4Defines the Test Kit API for the JUnit Platform.
-
New PackagesPackageAdded inDescription1.6Common
LauncherDiscoveryListenerimplementations and factory methods.1.8CommonLauncherSessionListenerimplementations and factory methods.
-
New InterfacesInterfaceAdded inDescription5.8
ClassDescriptorencapsulates functionality for a givenClass.5.8ClassOrdererdefines the API for ordering top-level test classes and@Nestedtest classes.5.8ClassOrdererContextencapsulates the context in which aClassOrdererwill be invoked.5.4DisplayNameGeneratordefines the SPI for generating display names programmatically.5.13AfterClassTemplateInvocationCallbackdefines the API forExtensionsthat wish to provide additional behavior once after each invocation of a@ClassTemplate.5.10AnnotatedElementContextencapsulates the context in which anAnnotatedElementis declared.5.13BeforeClassTemplateInvocationCallbackdefines the API forExtensionsthat wish to provide additional behavior once before each invocation of a@ClassTemplate.5.13ClassTemplateInvocationContextrepresents the context of a single invocation of a@ClassTemplate.5.13ClassTemplateInvocationContextProviderdefines the API forExtensionsthat wish to provide one or multiple contexts for the invocation of a@ClassTemplate.5.8DynamicTestInvocationContextrepresents the context of a single invocation of a dynamic test.5.9ExecutableInvokerallows invoking methods and constructors with support for dynamic resolution of parameters viaParameterResolvers.5.1Classes implementing this interface indicate that they want toExtensionContext.Store.CloseableResource.close()some underlying resource or resources when the enclosingStoreis closed.5.5InvocationInterceptordefines the API forExtensionsthat wish to intercept calls to test code.5.5An invocation that returns a result and may throw aThrowable.5.5LifecycleMethodExecutionExceptionHandlerdefines the API forExtensionsthat wish to handle exceptions thrown during the execution of@BeforeAll,@BeforeEach,@AfterEach, and@AfterAlllifecycle methods.5.12PreInterruptCallbackdefines the API forExtensionsthat wish to be called prior to invocations ofThread.interrupt()by theTimeoutextension.5.12PreInterruptContextencapsulates the context in which anbeforeThreadInterruptmethod is called.5.5ReflectiveInvocationContextencapsulates the context of a reflective invocation of an executable (method or constructor).5.35.3TestInstanceFactoryContextencapsulates the context in which a test class is to be instantiated by aTestInstanceFactory.5.9TestInstancePreConstructCallbackdefines the API forExtensionsthat wish to be invoked prior to creation of test instances.5.6TestInstancePreDestroyCallbackdefines the API forExtensionsthat wish to process test instances after they have been used in tests but before they are destroyed.5.4TestInstancesencapsulates the test instances of a test.5.12TestInstantiationAwareExtensiondefines the API forExtensionsthat are aware of or influence the instantiation of test classes.5.4TestWatcherdefines the API forExtensionsthat wish to process test results.5.10TempDirFactorydefines the SPI for creating temporary directories programmatically.5.4MethodDescriptorencapsulates functionality for a givenMethod.5.4MethodOrdererdefines the API for ordering the test methods in a given test class.5.4MethodOrdererContextencapsulates the context in which aMethodOrdererwill be invoked.5.8Namedis a container that associates a name with a given payload.5.11NamedExecutablejoinsExecutableandNamedin a one self-typed functional interface.5.12AResourceLocksProvideris used to programmatically add shared resources to a test class or its test methods dynamically at runtime.5.9.1Factory for timeout failures.5.45.1Filterableis implemented byTestDescriptorsthat may register dynamic tests during execution and support selective test execution.5.135.13Interface for descriptors that can be validated during discovery.5.12Container of two instances ofExtensionContextto simplify the legacy for #3445.5.12ExtensionContextInternalextends theExtensionContextwith internal API.5.5AnExtensionRegistraris used to register extensions.5.2ArgumentsAccessordefines the public API for accessing arguments provided by anArgumentsProviderfor a single invocation of a@ParameterizedClassor@ParameterizedTest.5.2ArgumentsAggregatoris an abstraction for the aggregation of arguments provided by anArgumentsProviderfor a single invocation of a@ParameterizedTestmethod into a single object.5.14ParameterInfois used to provide information about the current invocation of a parameterized class or test.5.13FieldContextencapsulates the context in which an@Parameter-annotatedFieldis declared in a@ParameterizedClass.5.13ParameterDeclarationencapsulates the declaration of an indexed@ParameterizedClassor@ParameterizedTestparameter.5.13ParameterDeclarationsencapsulates the combined declarations of all indexed parameters for a@ParameterizedClassor@ParameterizedTest.5.13ParameterInfois used to provide information about the current invocation of a parameterized class or test.1.14Resourcerepresents a resource on the classpath.1.11Resourcerepresents a resource on the classpath.1.12ClasspathScannerallows to scan the classpath for classes and resources.1.11The result of splitting a string into up to two parts.6.0Token that should be checked to determine whether an operation was requested to be cancelled.1.11Parser for aDiscoverySelectorIdentifierwith a specific prefix.1.13DiscoveryIssuerepresents an issue that was encountered during test discovery by aTestEngine.1.6EngineDiscoveryListenerdefines the API which enables aTestEngineto publish information about events that occur during test discovery.1.14Provider of output directories for test engines to write reports and other output files to.1.12Provider of output directories for test engines to write reports and other output files to.1.13DiscoveryIssueReporterdefines the API for reportingDiscoveryIssues.1.5The initialization context for creating resolvers and visitors that depend on theEngineDiscoveryRequestto be resolved or the engine descriptor that will be used to collect the results.1.5A resolver that supports resolving one or multiple types ofDiscoverySelectors.1.5The context for resolving aDiscoverySelectorand adding it to the test tree.1.3A closeable service that executes test tasks.1.4Represents an invocation that runs with the supplied context.1.3Configuration to use for parallel test execution.1.3A strategy to use for configuring parallel test execution.1.3A lock for a one or more resources.1.3LauncherConfigdefines the configuration API for creatingLauncherinstances via theLauncherFactory.1.6Register a concrete implementation of this interface with aLauncherDiscoveryRequestBuilderorLauncherto be notified of events that occur during test discovery.6.0LauncherExecutionRequestencapsulates a request for test execution passed to theLauncher.1.10Interceptor for test discovery and execution by aLauncherin the context of aLauncherSession.1.8TheLauncherSessionAPI is the main entry point for client code that wishes to repeatedly discover and execute tests using one or more test engines.1.8Register an implementation of this interface to be notified when aLauncherSessionis opened and closed.1.12PostDiscoveryFilterthat is applied to the fully qualifiedMethodname without parameters.1.1The result of attempting to parse aTagExpression.1.1A tag expression can be evaluated against a collection of tags to determine if they match the expression.1.10Visitor forTestIdentifiersin aTestPlan.
-
New ClassesClassAdded inDescription5.9Builder for
AssertionFailedErrors.6.0ClassOrdererthat allows to explicitly specify that the default ordering should be applied.5.7DisplayNameGeneratorthat generates complete sentences.5.7SimpleDisplayNameGeneratorthat removes trailing parentheses for methods with no parameters.5.12Represents a media type as defined by RFC 2045.5.6ParameterResolveradapter which resolves a parameter based on its exact type.5.14Represents a media type as defined by RFC 2045.6.0MethodOrdererthat allows to explicitly specify that the default ordering should be applied.5.7MethodOrdererthat sorts methods alphanumerically based on their display names usingString.compareTo(String)5.7MethodOrdererthat sorts methods alphanumerically based on their names usingString.compareTo(String).5.12Lockrepresents a shared resource.5.3Common resource names for synchronizing test execution.6.0Internal utilities for executing code with a preemptive timeout.5.4Caching implementation of theJupiterConfigurationAPI.5.4Default implementation of theJupiterConfigurationAPI.5.45.5TestDescriptorfor tests based on Java classes.5.135.135.1Filter for dynamic descendants ofTestDescriptorsthat implementFilterable.5.13Predicates for determining whether a class is a JUnit Jupiter test class.5.95.9ParameterResolutionUtilsprovides support for dynamic resolution of executable parameters viaParameterResolvers.5.5Default, mutable implementation ofExtensionRegistry.5.4Factory for creatingThrowableCollectorswithin the JUnit Jupiter test engine.5.4ExecutionConditionthat supports JUnit 4's@Ignoreannotation.5.2Default implementation of theArgumentsAccessorAPI.5.10AnnotationBasedArgumentConverteris an abstract base class forArgumentConverterimplementations that also need to consume an annotation in order to perform the conversion.5.7TypedArgumentConverteris an abstract base class forArgumentConverterimplementations that always convert objects of a given source type into a given target type.5.13Constants for the use with the@ParameterizedClassand@ParameterizedTestannotations.5.10AnnotationBasedArgumentsProvideris an abstract base class forArgumentsProviderimplementations that also need to consume an annotation in order to provide the arguments.5.116.0Customized parameter name and its associated argument value.1.4A container object which may either contain a nullable value in case of success or an exception in case of failure.1.14Resource filter used by reflection and classpath scanning support.1.1LogRecordListeneris only intended for testing purposes within JUnit's own test suite.1.1ClassSupportprovides 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.1.11ConversionSupportprovides static utility methods for converting a given object into an instance of a specified type.1.4ModifierSupportprovides static utility methods for working with class and member modifiers — for example, to determine if a class or member is declared aspublic,private,abstract,static, etc.1.14ResourceSupportprovides static utility methods for common tasks dealing with resources; for example, scanning for resources on the class path or module path.1.1Class-related predicate used by reflection utilities.1.7Collection of utilities for creating filters based on class names.1.13.3Internal Kotlin-specific reflection utilities1.6A simple LRU cache with a maximum size.1.1Collection of utilities for working withjava.lang.Moduleand friends.1.6Collection of utilities for working withRuntime,RuntimeMXBean, etc.1.11Collection of utilities for working withServiceLoader.1.7Internal utilities for working with unrecoverable exceptions.1.10Internal facade to run a CLI command that exists to hide implementation details such as the used library.1.101.6Run the JUnit Platform Console Launcher as a service.1.9Collection of utilities for working withjava.io.Consoleand friends.1.101.101.91.71.9ADiscoverySelectorthat selects the iterations of a parentDiscoverySelectorvia their indices so thatTestEnginescan discover a subset of the iterations of tests or containers.1.1ADiscoverySelectorthat selects a module name so thatTestEnginescan discover tests or containers based on modules.1.6ADiscoverySelectorthat selects a nestedClassor class name enclosed in other classes so thatTestEnginescan discover tests or containers based on classes.1.6ADiscoverySelectorthat selects a nestedMethodor a combination of enclosing class names, class name, method name, and parameter types so thatTestEnginescan discover tests or containers based on methods.1.11Identifier for aDiscoverySelectorwith a specific prefix.1.12FileEntryencapsulates a file or directory to be published to the reporting infrastructure.1.61.3View ofConfigurationParametersthat applies a supplied prefix to all queries.1.5Configurable test discovery implementation based onSelectorResolverandTestDescriptor.Visitorthat can be reused by differentTestEngines.1.5Builder forEngineDiscoveryRequestResolver.1.5An exact or partial match for resolving aDiscoverySelectorinto aTestDescriptor.1.5The result of an attempt to resolve aDiscoverySelector.1.3An exclusive resource identified by a key with a lock mode that is used to synchronize access to shared resources when executing nodes in parallel.1.31.3Specialization ofThrowableCollectorthat treats instances ofTestAbortedExceptionas aborting.1.3A simple executor service that executes all test tasks in the caller's thread.1.3Simple component that can be used to collect one or more instances ofThrowable.1.10NamespacedHierarchicalStoreis a hierarchical, namespaced key-value store.1.7Orchestrates test discovery using the configured test engines.1.7Orchestrates test execution using the configured test engines.1.7Represents the result of test discovery of the configured test engines.6.0TheLauncherExecutionRequestBuilderprovides a light-weight DSL for generating aLauncherExecutionRequest.1.6EngineDiscoveryResultencapsulates the result of test discovery by aTestEngine.6.0Internal utility for Java Flight Recorder (JFR) support.1.3Collection of constants related toLauncher.1.6Collection ofstaticfactory methods for creatingLauncherDiscoveryListeners.1.8Collection ofstaticfactory methods for creatingLauncherSessionListeners.1.8UniqueIdTrackingListeneris aTestExecutionListenerthat tracks the unique IDs of all tests that were executed during the execution of theTestPlanand generates a file containing the unique IDs once execution of theTestPlanhas finished.1.0.3Utility methods for dealing with legacy reporting infrastructure, such as reporting systems built on the Ant-based XML reporting format for JUnit 4.1.4LegacyXmlReportGeneratingListeneris aTestExecutionListenerthat generates a separate XML report for each root in theTestPlan.1.12Contributes a section containing JUnit-specific metadata for each test node to the open-test-reporting HTML report.1.9Open Test Reporting events XML generating test execution listener.1.8The JUnit Platform SuiteTestEngine.1.13EngineDiscoveryResultsrepresents the results of test discovery by aTestEngineon the JUnit Platform and provides access to theTestDescriptorof the engine and anyDiscoveryIssuesthat were encountered.1.4EngineExecutionResultsprovides a fluent API for processing the results of executing a test plan on the JUnit Platform for a givenTestEngine.1.4EngineTestKitprovides support for discovering and executing tests for a givenTestEngineand provides convenient access to the results.1.4TestEngineexecution builder.1.4Eventrepresents a single event fired during execution of a test plan on the JUnit Platform.1.4Collection of AssertJ conditions forEvent.1.4Eventsis a facade that provides a fluent API for working with events.1.4EventStatisticsprovides a fluent API for asserting statistics for events.1.4Executionencapsulates metadata for the execution of a singleTestDescriptor.1.4ExecutionRecorderis anEngineExecutionListenerthat records data from every event that occurs during the engine execution lifecycle and provides functionality for retrieving execution state viaEngineExecutionResults.1.4Executionsis a facade that provides a fluent API for working with executions.1.4TerminationInfois a union type that allows propagation of terminated container/test state, supporting either the reason if the container/test was skipped or theTestExecutionResultif the container/test was executed.1.4Collection of AssertJ conditions forTestExecutionResult.5.65.65.12
-
New Enum ClassesEnum ClassAdded inDescription5.1Enumeration of Java Runtime Environment (JRE) versions.5.1Enumeration of common operating systems used for testing Java applications.5.13
StoreScopeis an enumeration of the different scopes forExtensionContext.Storeinstances.5.12ExtensionContextScopeis used to define the scope of theExtensionContextsupplied to an extension during the instantiation of test classes or processing of test instances.5.9Enumeration of cleanup modes for@TempDir.5.3Supported execution modes for parallel test execution.5.3The access mode required by a test class or method for a given resource.5.12ResourceLockTargetis used to define the target of a shared resource.5.9ThreadModeis used to define whether test code should be executed in the thread of the calling code or in a separate thread.5.12Enumeration of argument count validation modes for@ParameterizedClassand@ParameterizedTest.5.6Dummy enum class used as the default value for optional attributes of annotations.1.8Search options for finding an annotation within a class hierarchy.1.13.21.3Default implementations of configuration strategies for parallel test execution.1.3Supported execution modes for parallel execution.1.4Enumeration of the different possibleEventtypes.
-
New Exception ClassesException ClassAdded inDescription5.13
TemplateInvocationValidationExceptionis an exception thrown by aTestTemplateInvocationContextProviderorClassTemplateInvocationContextProviderif a validation fails when while providing or closingStreamof invocation contexts.5.3Thrown if an error is encountered during the execution of aTestInstanceFactory.5.2ArgumentAccessExceptionis an exception thrown by anArgumentsAccessorif an error occurs while accessing or converting an argument.5.2ArgumentsAggregationExceptionis an exception thrown by anArgumentsAggregatorwhen an error occurs while aggregating arguments.5.3Thrown if an error is encountered while parsing CSV input.1.5Thrown if a precondition is violated.1.11ConversionExceptionis an exception that can occur when an object is converted to another object.1.10Exception thrown by failedNamespacedHierarchicalStoreoperations.1.13DiscoveryIssueExceptionis an exception that is thrown if an engine reports critical issues during test discovery.
-
New Annotation InterfacesAnnotation InterfaceAdded inDescription5.11
@AutoCloseis used to indicate that an annotated field will be automatically closed after test execution.5.13@ClassTemplateis used to signal that the annotated class is a class template.5.6@DisabledForJreRangeis used to signal that the annotated test class or test method is disabled for a specific range of Java Runtime Environment (JRE) versions.5.7@DisabledIfis used to signal that the annotated test class or test method is disabled if the provided condition evaluates totrue.5.1@DisabledIfEnvironmentVariableis 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.5.6@DisabledIfEnvironmentVariablesis a container for one or more@DisabledIfEnvironmentVariabledeclarations.5.6@DisabledIfSystemPropertiesis a container for one or more@DisabledIfSystemPropertydeclarations.5.1@DisabledIfSystemPropertyis 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.5.9.1@DisabledInNativeImageis used to signal that the annotated test class or test method is disabled when executing within a GraalVM native image.5.1@DisabledOnJreis used to signal that the annotated test class or test method is disabled on one or more specified Java Runtime Environment (JRE) versions.5.1@DisabledOnOsis used to signal that the annotated test class or test method is disabled on one or more specified operating systems or on one or more specified architectures5.6@EnabledForJreRangeis used to signal that the annotated test class or test method is only enabled for a specific range of Java Runtime Environment (JRE) versions.5.7@EnabledIfis used to signal that the annotated test class or test method is only enabled if the provided condition evaluates totrue.5.1@EnabledIfEnvironmentVariableis 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.5.6@EnabledIfEnvironmentVariablesis a container for one or more@EnabledIfEnvironmentVariabledeclarations.5.6@EnabledIfSystemPropertiesis a container for one or more@EnabledIfSystemPropertydeclarations.5.1@EnabledIfSystemPropertyis 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.5.9.1@EnabledInNativeImageis used to signal that the annotated test class or test method is only enabled when executing within a GraalVM native image.5.1@EnabledOnJreis used to signal that the annotated test class or test method is only enabled on one or more specified Java Runtime Environment (JRE) versions.5.1@EnabledOnOsis used to signal that the annotated test class or test method is only enabled on one or more specified operating systems or one or more specified architectures.5.4@DisplayNameGenerationis used to declare a custom display name generator for the annotated test class.5.13@SentenceFragmentis used to configure a custom sentence fragment for a sentence generated by theIndicativeSentencesDisplayNameGenerator.5.13Internal marker annotation for lifecycle methods specific to implementations ofClassTemplateInvocationContextProvider.5.1@RegisterExtensionis used to register anExtensionvia a field in a test class.5.7@IndicativeSentencesGenerationis used to register theDisplayNameGenerator.IndicativeSentencesdisplay name generator and configure it.5.45.4@Orderis an annotation that is used to configure the order in which the annotated element (i.e., field, method, or class) should be evaluated or executed relative to other elements of the same category.5.3@Executionis used to configure the parallel execution mode of a test class or test method.5.7@Isolatedis used to declare that the annotated test class should be executed in isolation from other test classes.5.3@ResourceLockis used to declare that the annotated test class or test method requires access to a shared resource identified by a key.5.3@ResourceLocksis a container for one or more@ResourceLockdeclarations.5.8@TestClassOrderis a type-level annotation that is used to configure aClassOrdererfor the@Nestedtest classes of the annotated test class.5.4@TestMethodOrderis a type-level annotation that is used to configure aMethodOrdererfor the test methods of the annotated test class or test interface.5.5@Timeoutis used to define a timeout for a method or all testable methods within one class and its@Nestedclasses.5.4EnableJUnit4MigrationSupportis a class-level annotation that enables all JUnit 4 migration support within JUnit Jupiter.5.13@AfterParameterizedClassInvocationis used to signal that the annotated method should be executed before each invocation of the current@ParameterizedClass.5.2@AggregateWithis an annotation that allows one to specify anArgumentsAggregator.5.13@BeforeParameterizedClassInvocationis used to signal that the annotated method should be executed before each invocation of the current@ParameterizedClass.5.13@Parameteris used to signal that a field in a@ParameterizedClassconstitutes a parameter and marks it for field injection.5.13@ParameterizedClassis used to signal that the annotated class is a parameterized test class.5.11@CsvFileSourcesis a simple container for one or more@CsvFileSourceannotations.5.11@CsvSourcesis a simple container for one or more@CsvSourceannotations.5.4@EmptySourceis anArgumentsSourcewhich provides a single empty argument to the annotated@ParameterizedClassor@ParameterizedTest.5.11@EnumSourcesis a simple container for one or more@EnumSourceannotations.5.11@FieldSourceis a repeatableArgumentsSourcewhich provides access to values of fields of the class in which this annotation is declared or from static fields in external classes referenced by fully qualified field name.5.11@FieldSourcesis a simple container for one or more@FieldSourceannotations.5.11@MethodSourcesis a simple container for one or more@MethodSourceannotations.5.4@NullAndEmptySourceis a composed annotation that combines the functionality of@NullSourceand@EmptySource.5.4@NullSourceis anArgumentsSourcewhich provides a singlenullargument to the annotated@ParameterizedClassor@ParameterizedTest.5.11@ValueSourcesis a simple container for one or more@ValueSourceannotations.6.0Specifies some aspects of the annotated method's behavior to be used by tools for data flow analysis.1.11@AfterSuiteis used to signal that the annotated method should be executed after all tests in the current test suite.1.11@BeforeSuiteis used to signal that the annotated method should be executed before all tests in the current test suite.1.8@ConfigurationParameteris a repeatable annotation that specifies a configurationkeyandvaluepair to be added to the discovery request when running a test suite on the JUnit Platform.1.8@ConfigurationParametersis a container for one or more@ConfigurationParameterdeclarations.1.11@ConfigurationParametersResourceis a repeatable annotation that specifies a configuration file in Java's properties format on the classpath to be added to the discovery request when running a test suite on the JUnit Platform.1.11@ConfigurationParametersResourcesis a container for one or more@ConfigurationParametersResourcedeclarations.1.8Disable parent configuration parameters.1.11@Selectis a repeatable annotation that specifies which tests to select based on prefixed selector identifiers.1.8@SelectClasspathResourceis a repeatable annotation that specifies a classpath resource to select when running a test suite on the JUnit Platform.1.8@SelectClasspathResourcesis a container for one or more@SelectClasspathResourcedeclarations.1.8@SelectDirectoriesspecifies the directories to select when running a test suite on the JUnit Platform.1.8@SelectFileis a repeatable annotation that specifies a file to select when running a test suite on the JUnit Platform.1.8@SelectFilesis a container for one or more@SelectFiledeclarations.1.10@SelectMethodis a repeatable annotation that specifies a method to select when running a test suite on the JUnit Platform.1.10@SelectMethodsis a container for one or more@SelectMethoddeclarations.1.8@SelectModulesspecifies the modules to select when running a test suite on the JUnit Platform.1.11@Selectsis a container for one or more@Selectdeclarations.1.8@SelectUrisspecifies the URIs to select when running a test suite on the JUnit Platform.1.8@Suitemarks a class as a test suite on the JUnit Platform.1.1@SuiteDisplayNameis used to declare a custom display name for the annotated test class that is executed as a test suite on the JUnit Platform.
-
New FieldsFieldAdded inDescription5.8Property name used to set the default class orderer class name: "junit.jupiter.testclass.order.default"5.5Property name used to set the default display name generator class name: "junit.jupiter.displayname.generator.default"5.12Property name used to enable dumping the stack of all threads to
System.outwhen a timeout has occurred.5.9The name of the configuration parameter that is used to configure the defaultCleanupMode.5.10Property name used to set the default temporary directory factory class name: "junit.jupiter.tempdir.factory.default"5.7Property name used to set the default method orderer class name: "junit.jupiter.testmethod.order.default"5.6Default order value for elements not explicitly annotated with@Order, equal to the value ofInteger.MAX_VALUE / 2.5.4Property name used to set the default test execution mode for top-level classes: "junit.jupiter.execution.parallel.mode.classes.default"5.4Property name used to set the default test execution mode: "junit.jupiter.execution.parallel.mode.default"5.8Represents the global resource lock: "org.junit.platform.engine.support.hierarchical.ExclusiveResource.GLOBAL_KEY"5.4Represents the default locale for the current instance of the JVM: "java.util.Locale.default"5.4Represents the default time zone for the current instance of the JVM: "java.util.TimeZone.default"5.5Property name used to set the default timeout for all@AfterAllmethods: "junit.jupiter.execution.timeout.afterall.method.default".5.5Property name used to set the default timeout for all@AfterEachmethods: "junit.jupiter.execution.timeout.aftereach.method.default".5.5Property name used to set the default timeout for all@BeforeAllmethods: "junit.jupiter.execution.timeout.beforeall.method.default".5.5Property name used to set the default timeout for all@BeforeEachmethods: "junit.jupiter.execution.timeout.beforeeach.method.default".5.5Property name used to set the default timeout for all lifecycle methods: "junit.jupiter.execution.timeout.lifecycle.method.default".5.5Property name used to set the default timeout for all@TestFactorymethods: "junit.jupiter.execution.timeout.testfactory.method.default".5.5Property name used to set the default timeout for all@Testmethods: "junit.jupiter.execution.timeout.test.method.default".5.5Property name used to set the default timeout for all@TestTemplatemethods: "junit.jupiter.execution.timeout.testtemplate.method.default".5.5Property name used to set the default timeout for all testable methods: "junit.jupiter.execution.timeout.testable.method.default".5.5Property name used to set the default timeout for all testable and lifecycle methods: "junit.jupiter.execution.timeout.default".5.9Property name used to set the default thread mode for all testable and lifecycle methods: "junit.jupiter.execution.timeout.thread.mode.default".5.6Property name used to configure whether timeouts are applied to tests: "junit.jupiter.execution.timeout.mode".5.13Property name used to enable auto-closing ofAutoCloseableinstances5.10Property name used to set the default factory for temporary directories created via the@TempDirannotation: "junit.jupiter.tempdir.factory.default"5.12Property name used to set the default extension context scope for extensions that participate in test instantiation: "junit.jupiter.extensions.testinstantiation.extensioncontextscope.default"5.9Property name used to set the default timeout thread mode.5.12Property name used to enable dumping the stack of all threads toSystem.outwhen a timeout has occurred.5.3Property name used to specify the fully qualified class name of theParallelExecutionConfigurationStrategyto be used for thecustomconfiguration strategy: "junit.jupiter.execution.parallel.config.custom.class"5.3Property name used to set the factor to be multiplied with the number of available processors/cores to determine the desired parallelism for thedynamicconfiguration strategy: "junit.jupiter.execution.parallel.config.dynamic.factor"5.10Property name used to configure the maximum pool size of the underlying fork-join pool for thefixedconfiguration strategy: "junit.jupiter.execution.parallel.config.fixed.max-pool-size"5.3Property name used to set the desired parallelism for thefixedconfiguration strategy: "junit.jupiter.execution.parallel.config.fixed.parallelism"5.10Property name used to disable saturation of the underlying fork-join pool for thefixedconfiguration strategy: "junit.jupiter.execution.parallel.config.fixed.saturate"5.3Property name used to select theParallelExecutionConfigurationStrategy: "junit.jupiter.execution.parallel.config.strategy"5.3Property name used to enable parallel test execution: "junit.jupiter.execution.parallel.enabled"5.11Placeholder for eitherParameterizedInvocationConstants.ARGUMENT_SET_NAME_PLACEHOLDERorParameterizedInvocationConstants.ARGUMENTS_WITH_NAMES_PLACEHOLDER, depending on whether the current set of arguments was created viaargumentSet():{argumentSetNameOrArgumentsWithNames}.5.11Placeholder for the name of the argument set for the current invocation of a@ParameterizedTestmethod:{argumentSetName}.5.3Placeholder for the complete, comma-separated arguments list of the current invocation of a@ParameterizedTestmethod:{arguments}5.6Placeholder for the complete, comma-separated named arguments list of the current invocation of a@ParameterizedTestmethod:{argumentsWithNames}5.3Default display name pattern for the current invocation of a@ParameterizedTestmethod: "[{index}] {argumentSetNameOrArgumentsWithNames}"5.35.3Placeholder for the current invocation index of a@ParameterizedTestmethod (1-based):{index}5.115.115.35.65.35.35.31.31.81.10Property name of the factor used to determine the maximum pool size of the underlying fork-join pool for theDefaultParallelExecutionConfigurationStrategy.DYNAMICconfiguration strategy.1.10Property name used to disable saturation of the underlying fork-join pool for theDefaultParallelExecutionConfigurationStrategy.DYNAMICconfiguration strategy.1.10Property name used to configure the maximum pool size of the underlying fork-join pool for theDefaultParallelExecutionConfigurationStrategy.FIXEDconfiguration strategy.1.10Property name used to disable saturation of the underlying fork-join pool for theDefaultParallelExecutionConfigurationStrategy.FIXEDconfiguration strategy.1.7Key of the global resource lock that all direct children of the engine descriptor acquire in read mode by default: "org.junit.platform.engine.support.hierarchical.ExclusiveResource.GLOBAL_KEY"1.13Property name used to configure the critical severity of issues encountered during test discovery.1.13Property name used to configure the phase that critical discovery issues should cause a failure1.12Property name used to configure the output directory for reporting.1.12Placeholder for use inLauncherConstants.OUTPUT_DIR_PROPERTY_NAMEthat will be replaced with a unique number.6.0.1Property name used to configure whether the JUnit Vintage engine should report discovery issues such as deprecation notices.5.12Indicates whether parallel execution is enabled for test classes in the JUnit Vintage engine.5.12Indicates whether parallel execution is enabled for the JUnit Vintage engine.5.12Indicates whether parallel execution is enabled for test methods in the JUnit Vintage engine.5.12Specifies the size of the thread pool to be used for parallel execution.
-
New MethodsMethodAdded inDescription5.2Assert that execution of the supplied
executabledoes not throw any kind of exception.5.2Assert that execution of the suppliedexecutabledoes not throw any kind of exception.5.2Assert that execution of the suppliedexecutabledoes not throw any kind of exception.5.2Assert that execution of the suppliedsupplierdoes not throw any kind of exception.5.2Assert that execution of the suppliedsupplierdoes not throw any kind of exception.5.2Assert that execution of the suppliedsupplierdoes not throw any kind of exception.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.4Assert thatexpectedandactualare equal.5.8Assert that the suppliedactualValueis an instance of theexpectedType.5.8Assert that the suppliedactualValueis an instance of theexpectedType.5.8Assert that the suppliedactualValueis an instance of theexpectedType.5.75.75.75.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal within the givendelta.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.4Assert thatunexpectedandactualare not equal.5.8Assert that execution of the suppliedexecutablethrows an exception of exactly theexpectedTypeand return the exception.5.8Assert that execution of the suppliedexecutablethrows an exception of exactly theexpectedTypeand return the exception.5.8Assert that execution of the suppliedexecutablethrows an exception of exactly theexpectedTypeand return the exception.5.9Abort the test without a message.5.9Abort the test with the givenmessage.5.9Abort the test with the supplied message.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment version which is used as the upper boundary for the version range that determines if the annotated class or method should be disabled, specified as an integer.5.12Java Runtime Environment version which is used as the lower boundary for the version range that determines if the annotated class or method should be disabled, specified as an integer.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment versions on which the annotated class or method should be disabled, specified as integers.5.9Architectures on which the annotated class or method should be disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment version which is used as the upper boundary for the version range that determines if the annotated class or method should be enabled, specified as an integer.5.12Java Runtime Environment version which is used as the lower boundary for the version range that determines if the annotated class or method should be enabled, specified as an integer.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment versions on which the annotated class or method should be enabled, specified as integers.5.9Architectures on which the annotated class or method should be enabled.5.7Custom reason to provide if the test or container is disabled.5.125.75.12Returns the version number for the currently executing JVM, or-1if the current JVM version could not be determined.5.12Returnstrueif the supplied version number is known to be the Java Runtime Environment version for the currently executing JVM or if the supplied version number is-1and the current JVM version could not be determined.5.12Get the version of thisJRE.5.9Returns the current operating system, if known; otherwise,null.5.12Generate a display name for the given method.5.12Generate a display name for the given@Nestedinner test class.5.3Factory for creating a newDynamicContainerfor the supplied display name, custom test sourceURI, and stream of dynamic nodes.5.3Get the custom test sourceURIof thisDynamicNode.5.3Factory for creating a newDynamicTestfor the supplied display name, custom test sourceURI, and executable code block.5.8Generate a stream of dynamic tests based on the given generator and test executor.5.11Generate a stream of dynamic tests based on the given iterator.5.8Generate a stream of dynamic tests based on the given input stream and test executor.5.11Generate a stream of dynamic tests based on the given input stream.5.7Generate a stream of dynamic tests based on the given input stream and test executor.5.7Factory for creating disabled results with custom reasons added by the user.5.1Get the configuration parameter stored under the specifiedkey.5.7Get and transform the configuration parameter stored under the specifiedkeyusing the specifiedtransformer.5.12.1Get the enclosing test classes of the current test or container.5.9Get anExecutableInvokerto invoke methods and constructors with support for dynamic resolution of parameters.5.8.1Get theExecutionModeassociated with the current test or container.5.4Get the required test instances associated with the current test or container.5.13Returns the store for supplied scope and namespace.5.1Get theTestInstance.Lifecycleof the test instance associated with the current test or container, if available.5.4Get the test instances associated with the current test or container, if available.5.8Create a new namespace by appending the suppliedpartsto the existing sequence of parts in this namespace.5.12Publish a directory with the supplied name written by the supplied action and attach it to the current test or container.5.12Publish a file with the supplied name written by the supplied action and attach it to the current test or container.5.14Publish a file with the supplied name written by the supplied action and attach it to the current test or container.5.3Publish the specified value to be consumed by anorg.junit.platform.engine.EngineExecutionListenerin order to supply additional information to the reporting infrastructure.6.0Return the object of typetypeif it is present and notnullin thisStore(keyed bytype); otherwise, invoke the default constructor fortypeto generate the object, store it, and return it.6.0Return the value of the specified required type that is stored under the suppliedkey.6.0Get the value of the specified required type that is stored under the suppliedkey.5.1Get the object of typetypethat is present in thisStore(keyed bytype); and otherwise invoke the default constructor fortypeto generate the object, store it, and return it.5.5Get the value of the specified required type that is stored under the suppliedkey, or the supplieddefaultValueif no value is found for the suppliedkeyin this store or in an ancestor.5.1.1Find the first annotation ofannotationTypethat is either present or meta-present on theAnnotatedElementfor this context.5.1.1Find all repeatable annotations ofannotationTypethat are either present or meta-present on theAnnotatedElementfor this context.5.10Get theAnnotatedElementfor this context.5.1.1Determine if an annotation ofannotationTypeis either present or meta-present on theAnnotatedElementfor this context.5.12Callback that is invoked before aThreadis interrupted withThread.interrupt().5.12Get theThreadwhich will be interrupted.5.7.1Utility method for processing all test instances of anExtensionContextthat are not present in any of its parent contexts.5.12Determine whether this extension should receive a test-method scopedExtensionContextduring the instantiation of test classes or processing of test instances.5.13Prepare the imminent invocation of the test template.5.12Signal that this provider may provide zero invocation contexts for the test template method represented by the suppliedcontext.5.9How the temporary directory gets cleaned up after the test completes.5.10Factory for the temporary directory.5.7Get the display name for this descriptor'smethod.5.10The reason for using the selected execution mode.5.12An array of one or more classes implementingResourceLocksProvider.5.12The target of a resource created fromResourceLock.value()andResourceLock.mode().5.10Configures the number of failures after which remaining repetitions will be automatically skipped.5.10Get the current number of repetitions of the corresponding@RepeatedTestmethod that have ended in a failure.5.10Get the configured failure threshold of the corresponding@RepeatedTestmethod.5.12Publish a directory with the supplied name written by the supplied action and attach it to the current test or container.5.12Publish the supplied directory and attach it to the current test or container.5.3Publish the supplied value as a report entry.5.12Publish a file with the supplied name and media type written by the supplied action and attach it to the current test or container.5.14Publish a file with the supplied name and media type written by the supplied action and attach it to the current test or container.5.12Publish the supplied file and attach it to the current test or container.5.14Publish the supplied file and attach it to the current test or container.5.9The thread mode of this timeout.5.45.4InvokeTestWatcher.testDisabled(ExtensionContext, Optional)on each registeredTestWatcher, in registration order.5.4OverrideTestMethodTestDescriptor.nodeFinished(JupiterEngineExecutionContext, TestDescriptor, TestExecutionResult)as a no-op, since theTestWatcherAPI is not supported for@TestFactorycontainers.5.4OverrideMethodBasedTestDescriptor.nodeSkipped(JupiterEngineExecutionContext, TestDescriptor, Node.SkipResult)as a no-op, since theTestWatcherAPI is not supported for@TestFactorycontainers.5.4InvoketestSuccessful(),testAborted(), ortestFailed()on each registeredTestWatcheraccording to the status of the suppliedTestExecutionResult, in reverse registration order.5.3org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.beforeAllCallbacksExecuted(boolean) 5.3Track that an attempt was made to executeBeforeAllCallbackextensions.5.8Instantiate an extension of the given type using its default constructor and register it in the registry.5.8Register the suppliedExtensionas a synthetic extension, without checking if an extension of that type has already been registered.5.45.13Aggregate the arguments contained in the suppliedaccessorinto a single object.5.13Convert the suppliedsourceobject according to the suppliedcontext.5.12Whethernullargument values are allowed.6.0Configure whether to enclose text-based argument values in quotes within display names.5.12Configure whether zero invocations are allowed for this parameterized test.5.12Configure how the number of arguments provided by anArgumentsSourceare validated.5.8Configure whether all arguments of the parameterized test that implementAutoCloseablewill be closed after their corresponding invocation.6.0Configure whether to enclose text-based argument values in quotes within display names.5.3Factory method for creating an instance ofArgumentsbased on the suppliedarguments.5.115.136.0.1The character used to denote comments when reading the CSV files.5.6The column delimiter string to use when reading the CSV files.5.5The empty value to use when reading the CSV files.5.8Controls whether leading and trailing whitespace characters of unquoted CSV columns should be ignored.5.7The maximum number of characters allowed per CSV column.5.6A list of strings that should be interpreted asnullreferences.5.1The number of lines to skip when reading the CSV files.5.8.2The quote character to use for quoted strings.5.8.2Configures whether the first CSV record should be treated as header names for columns.6.0.1The character used to denote comments in a text block.5.6The column delimiter string to use when reading the records.5.5The empty value to use when reading the records.5.8Controls whether leading and trailing whitespace characters of unquoted CSV columns should be ignored.5.7The maximum number of characters allowed per CSV column.5.6A list of strings that should be interpreted asnullreferences.5.8.2The quote character to use for quoted strings.5.8.1The CSV records to use as the source of arguments, supplied as a single text block; must not be empty.5.8.2Configures whether the first CSV record should be treated as header names for columns.5.12The starting enum constant of the range to be included.5.12The ending enum constant of the range to be included.5.5Thebooleanvalues to use as sources of arguments; must not be empty.5.1Thebytevalues to use as sources of arguments; must not be empty.5.1Thecharvalues to use as sources of arguments; must not be empty.5.1TheClassvalues to use as sources of arguments; must not be empty.5.1Thefloatvalues to use as sources of arguments; must not be empty.5.1Theshortvalues to use as sources of arguments; must not be empty.6.0If thisTryis a success, get the contained value; if thisTryis a failure, throw the contained exception.1.14Create a newResourcewith the given name and URI.1.4Get a stream oflog recordsthat have been submitted to this listener by the current thread at the given log level.1.4Find all distinct fields of the supplied class or interface that are annotated or meta-annotated with the specifiedannotationType, using top-down search semantics within the type hierarchy.1.10Find all distinct fields of the supplied class or interface that are annotated or meta-annotated with the specifiedannotationTypeand match the specifiedpredicate, using top-down search semantics within the type hierarchy.1.4Find all distinct fields of the supplied class or interface that are annotated or meta-annotated with the specifiedannotationTypeand match the specifiedpredicate, using the supplied hierarchy traversal mode.1.4Find the values of all static fields of the supplied class or interface that are annotated or meta-annotated with the specifiedannotationType, using top-down search semantics within the type hierarchy.1.4Find the values of all static fields of the supplied class or interface that are declared to be of the specifiedfieldTypeand are annotated or meta-annotated with the specifiedannotationType, using top-down search semantics within the type hierarchy.1.4Find the values of all non-static fields of the suppliedinstancethat are annotated or meta-annotated with the specifiedannotationType, using top-down search semantics within the type hierarchy.1.4Find the values of all non-static fields of the suppliedinstancethat are declared to be of the specifiedfieldTypeand are annotated or meta-annotated with the specifiedannotationType, using top-down search semantics within the type hierarchy.1.12Find the first annotation of the specified type that is either directly present, meta-present, or indirectly present on the supplied class.1.8Find the first annotation of the specified type that is either directly present, meta-present, or indirectly present on the supplied class.1.1Find the first annotation ofannotationTypethat is either present or meta-present on the supplied optionalelement.1.5Find all repeatable annotations of the suppliedannotationTypethat are either present, indirectly present, or meta-present on the supplied optionalelement.1.3Determine if an annotation ofannotationTypeis either present or meta-present on the supplied optionalelement.1.11Convert the supplied sourceStringinto an instance of the specified target type.1.5Determine if the supplied class isfinal.1.5Determine if the supplied member isfinal.1.13Determine if the supplied class is notabstract.1.13Determine if the supplied member is notabstract.1.5Determine if the supplied class is notfinal.1.5Determine if the supplied member is notfinal.1.1.1Find all classes in the suppliedmoduleNamethat match the specifiedclassFilterandclassNameFilterpredicates.1.11Find all resources in the supplied classpathrootthat match the specifiedresourceFilterpredicate.1.111.11Find all resources in the suppliedbasePackageNamethat match the specifiedresourceFilterpredicate.1.4Find all distinct fields of the supplied class or interface that match the specifiedpredicate.1.12Make the supplied field accessible via reflection.1.10Find all classes in the supplied classpathrootthat match the specifiedclassFilterandclassNameFilterpredicates.1.10Find all classes in the suppliedmoduleNamethat match the specifiedclassFilterandclassNameFilterpredicates.1.10Find all classes in the suppliedbasePackageNamethat match the specifiedclassFilterandclassNameFilterpredicates.1.11Find all resources in the supplied classpathrootthat match the specifiedresourceFilterpredicate.1.111.11Find all resources in the suppliedbasePackageNamethat match the specifiedresourceFilterpredicate.1.10Find all distinct fields of the supplied class or interface that match the specifiedpredicate.1.10Find all distinct methods of the supplied class or interface that match the specifiedpredicate.1.10Find all nested classes within the supplied class, or inherited by the supplied class, that conform to the supplied predicate.1.12Try to get the resources for the supplied classpath resource name.1.12Try to load the resources for the supplied classpath resource name, using the suppliedClassLoader.1.4Try to load a class by its primitive name or fully qualified name, using the defaultClassLoader.1.10Try to load a class by its primitive name or fully qualified name, using the suppliedClassLoader.1.4Try to read the value of a potentially inaccessible field.1.141.14Find all resources in the supplied classpathrootthat match the specifiedresourceFilterpredicate.1.14Find all resources in the supplied classpathrootthat match the specifiedresourceFilterpredicate.1.8Find the first annotation of the specified type that is either directly present, meta-present, or indirectly present on the supplied class, optionally searching recursively through the enclosing class hierarchy if not found on the supplied class.1.81.81.51.81.10Get theClassLoaderfor the suppliedClass, falling back to thedefault class loaderif the class loader for the supplied class isnull.1.3Get the fully qualified name of the supplied class.1.11Get the first element of the supplied collection unless it's empty.1.9.1Determine if an instance of the supplied type can be converted into aStream.1.10Find all causes and suppressed exceptions in the stack trace of the suppliedThrowable.1.10Prune the stack trace of the suppliedThrowable.6.01.11Find all resources for the given module name.1.11Get the module or implementation version for the suppliedtype.1.9Assert that the supplied array is neithernullnor empty.1.11.1.11.1.11.1org.junit.platform.commons.util.ReflectionUtils.findAllResourcesInClasspathRoot(URI, ResourceFilter) 1.111.111.111.13.21.4Build the fully qualified method name for the method described by the supplied class and method.1.11Build the fully qualified method name for the method described by the supplied class name, method name, and parameter types.1.11Determine a corresponding interface method for the given method handle, if possible.1.7Find the firstMethodof 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.1.8Determine if an object of the supplied source type can be assigned to the supplied target type for the purpose of reflective method invocations.5.14.11.51.51.3.2Determine if the supplied object is a multidimensional array.1.13.2Determine if a nested class within the supplied class, or inherited by the supplied class, that conforms to the supplied predicate is present.1.51.55.14.11.12Returns whether the suppliedclazzis a record class.1.12Returns whether the suppliedobjectis an instance of a record class.1.11Load a class by its primitive name or fully qualified name, using the suppliedClassLoader.1.121.111.11Parse the supplied fully qualified field name into a 2-elementString[]with the following content.1.101.101.101.101.101.101.111.111.111.101.101.101.13.21.4Try to get theMethodin the specified class with the specified name and parameter types.1.41.4Try to load a class by its primitive name or fully qualified name, using the suppliedClassLoader.1.4Try to read the value of a potentially inaccessible or nonexistent field.1.4Try to read the value of a potentially inaccessible static field.1.41.31.4Replace all ISO control characters in the suppliedString.1.4Replace all whitespace characters in the suppliedString.1.11Split the suppliedStringinto up to two parts using the supplied separator character.1.11Split the suppliedStringinto up to two parts using the supplied separator string.org.junit.platform.engine.ConfigurationParameters.get(String, Function<? super String, ? extends T>) 1.3Get and transform the configuration parameter stored under the specifiedkeyusing the specifiedtransformer.1.31.12Get the selectedresources.1.14Get the selectedresources.1.31.31.31.31.10Get theClassLoaderused to load the selected class.1.31.31.31.11Parse the supplied string representation of aDiscoverySelectorIdentifier.1.11Parse the suppliedDiscoverySelectorIdentifier.1.11Parse the supplied string representations ofDiscoverySelectorIdentifiers.1.11Parse the suppliedDiscoverySelectorIdentifiers.1.10Create aClassSelectorfor the supplied class name and class loader.6.0Create aClassSelectorfor each suppliedClass.6.0Create aClassSelectorfor each suppliedClass.6.0Create aClassSelectorfor each supplied class name, using the supplied class loader.6.0Create aClassSelectorfor each supplied class name, using the supplied class loader.6.0Create aClassSelectorfor each supplied class name.6.0Create aClassSelectorfor each supplied class name.1.12Create aClasspathResourceSelectorfor the supplied classpath resources.1.14Create aClasspathResourceSelectorfor the supplied classpath resources.1.9Create anIterationSelectorfor the supplied parent selector and iteration indices.1.10Create aMethodSelectorfor the supplied fully qualified method name and class loader.1.10Create aMethodSelectorfor the supplied class name, method name, and class loader.1.10Create aMethodSelectorfor the supplied class name, method name, parameter type names, and class loader.1.10Create aMethodSelectorfor the suppliedClass, method name, and parameter types.1.10Create aMethodSelectorfor the supplied class name, method name, and parameter types.1.1Create aModuleSelectorfor the supplied module name.1.1Create a list ofModuleSelectorsfor the supplied module names.1.10Create aNestedClassSelectorfor the supplied class name, its enclosing classes' names, and class loader.1.6Create aNestedClassSelectorfor the supplied nestedClassand its enclosing classes.1.6Create aNestedClassSelectorfor the supplied class name and its enclosing classes' names.1.10Create aNestedMethodSelectorfor the supplied nested class name, method name, and class loader.1.10Create aNestedMethodSelectorfor the supplied nested class name, method name, parameter type names, and class loader.1.61.6Create aNestedMethodSelectorfor the supplied nestedClassand method name.1.10Create aNestedMethodSelectorfor the supplied enclosing classes, nested class, method name, and parameter types.1.6Create aNestedMethodSelectorfor the suppliedClass, method name, and parameter type names.1.6Create aNestedMethodSelectorfor the supplied nested class name and method name.1.10Create aNestedMethodSelectorfor the supplied enclosing class names, nested class name, method name, and parameter types.1.6Create aNestedMethodSelectorfor the supplied nested class name, method name, and parameter type names.1.3Create an optionalFilePositionby parsing the suppliedquerystring.1.31.31.31.10Get theClassLoaderused to load the specified class.1.10Get the names of parameter types for the selected method as aString, typically a comma-separated list of primitive types, fully qualified class names, or array types.1.10Get the parameter types for the selected method.1.31.31.31.10Get theClassLoaderused to load the selected nested class.1.10Get theClassLoaderused to load the nested class.1.10Get the names of parameter types for the selected method as aString.1.10Get the parameter types for the selected method.1.31.31.31.31.31.31.11Return the identifier of this selector.1.13Called when the engine with the suppliedengineIdencountered an issue during test discovery.1.6Get theEngineDiscoveryListenerfor this request.1.14Get theOutputDirectoryCreatorfor this request.1.12Get theOutputDirectoryProviderfor this request.1.9Factory for creating an execution request.6.0Factory for creating an execution request.6.0Returns theCancellationTokenfor this request for engines to check whether they should cancel execution.1.14Returns theOutputDirectoryCreatorfor this request for writing reports and other output files.1.12Returns theOutputDirectoryProviderfor this request for writing reports and other output files.1.13Returns theNamespacedHierarchicalStorefor this request for storing request-scoped data.1.14Cast or adapt anOutputDirectoryCreatorto aOutputDirectoryProvider.1.3Create a newClasspathResourceSourcefrom the suppliedURI.1.8Create a newClassSourcefrom the suppliedURI.1.3Create an optionalFilePositionby parsing the suppliedquerystring.1.14Returns aFileSourcebased on this instance but with the suppliedFilePosition.1.31.5Create a newMethodSourceusing the supplied class name, method name, and method parameter types.1.7Get the Java class of this source.1.7Get the Java method of this source.1.3Create a newUriSourceusing the suppliedURI.1.12Add a predefined resolver that resolvesClasspathRootSelectors,ModuleSelectors, andPackageSelectorsintoClasspathResourceSelectorsby scanning for resources that satisfy the supplied predicate in the respective class containers to this builder.1.14Add a predefined resolver that resolvesClasspathRootSelectors,ModuleSelectors, andPackageSelectorsintoClasspathResourceSelectorsby scanning for resources that match the supplied resource filter in the respective class containers to this builder.1.13Returns theDiscoveryIssueReporterfor the current resolution.1.12Get the package name filter built from thePackageNameFiltersin theEngineDiscoveryRequestthat is about to be resolved.1.13Resolve the suppliedEngineDiscoveryRequestand collect the results into the suppliedTestDescriptorusing the suppliedDiscoveryIssueReporterto report issues encountered during resolution.1.3Create the executor service to use for executing the supplied request.1.3Create the factory for creatingThrowableCollectorinstances used to handle exceptions that occur during execution of this engine's tests.6.0Get the test descriptor of this task.1.4Wraps around the invocation ofNode.before(EngineExecutionContext),Node.execute(EngineExecutionContext, DynamicTestExecutor), andNode.after(EngineExecutionContext).1.1Clean up the suppliedcontextafter execution.1.7Submit a dynamic test descriptor for immediate execution with a custom, potentially no-op, execution listener.1.3Get the set of exclusive resources required to execute this node.1.3Get the preferred of execution mode for parallel execution of this node.1.4Callback invoked when the execution of this node has finished.1.4Callback invoked when the execution of this node has been skipped.org.junit.platform.engine.support.hierarchical.ParallelExecutionConfiguration.getSaturatePredicate()1.9Get the saturate predicate to be used for the execution'sForkJoinPool.1.6Convert the collectedThrowablesinto aTestExecutionResult.6.0Static factory method for creating aNamespacedHierarchicalStore.CloseActionwhich closes any value that implementsAutoCloseable.6.0Return the value stored for the supplied namespace and key in this store or the parent store, if present and notnull, or call the supplied function to compute it.6.0Return the value stored for the supplied namespace and key in this store or the parent store, if present and notnull, or call the supplied function to compute it and, finally, cast it to the supplied required type.1.13Returns the parent store of thisNamespacedHierarchicalStore.1.11Determine if this store has been closed.1.12Order the children of this descriptor.1.13Combine the suppliedvisitorsinto a singleVisitor.1.11.8Construct a newUniqueIdby appending a newUniqueId.Segment, based on the suppliedengineId, to the end of thisUniqueId.1.5Get the lastUniqueId.Segmentof thisUniqueId.1.1Determine if the suppliedUniqueIdis a prefix for thisUniqueId.1.51.7Add all of the suppliedfiltersto the configuration.1.8Configure the auto-registration flag for launcher discovery listeners.1.8Configure the auto-registration flag for launcher session listeners.1.7Configure the auto-registration flag for post discovery filters.1.8Get the collection of additional launcher discovery listeners that should be added to theLauncher.1.8Get the collection of additional launcher session listeners that should be added to theLauncher.1.7Get the collection of additional post discovery filters that should be added to theLauncher.org.junit.platform.launcher.core.LauncherConfig.isLauncherDiscoveryListenerAutoRegistrationEnabled()1.8Determine if launcher discovery listeners should be discovered at runtime using theServiceLoadermechanism and automatically registered.1.8Determine if launcher session listeners should be discovered at runtime using theServiceLoadermechanism and automatically registered.1.7Determine if post discovery filters should be discovered at runtime using theServiceLoadermechanism and automatically registered.6.0Create a newLauncherDiscoveryRequestBuilder.1.7Configure whether implicit configuration parameters should be considered.6.0Builds this discovery request and returns a new builder for creating aLauncherExecutionRequestthat is initialized to contain the resulting discovery request.1.6Add all supplied discovery listeners to the request.1.14Set theOutputDirectoryCreatorto use for the request.1.12Set theOutputDirectoryProviderto use for the request.1.8Set the parent configuration parameters to use for the request.1.3Factory method for creating a newLauncherusing the suppliedLauncherConfig.1.81.8Factory method for opening a newLauncherSessionusing the suppliedLauncherConfig.6.0Execute tests according to the suppliedLauncherExecutionRequestand notify registered listeners about the progress and results of the execution.1.4Execute the suppliedTestPlanand notify registered listeners about the progress and results of the execution.1.8Called when test discovery has finished.1.8Called when test discovery is about to be started.1.6Get theLauncherDiscoveryListenerfor this request.1.13Get theNamespacedHierarchicalStoreassociated with this session.1.6Print failed containers and tests, including sources and exception messages, to the suppliedPrintWriter.1.12Called when a file or directory has been published for the suppliedTestIdentifier.1.8Get the unique ID of this identifier's parent as aUniqueId, if available.1.8Get the unique ID of the represented test or container as aUniqueId.1.10Accept the suppliedTestPlan.Visitorfor a depth-first traversal of the test plan.1.8Get theConfigurationParametersfor this test plan.1.14Get theOutputDirectoryCreatorfor this test plan.1.12Get theOutputDirectoryProviderfor this test plan.1.10One or more classes to select by their fully qualified names.1.9Fail suite if no tests were discovered.1.6Get all recorded events.1.6Get recorded events for containers.1.6Get recorded events for tests.6.0Set theCancellationTokento use for execution.1.13Discover tests for the configuredTestEngine, discovery selectors, discovery filters, and configuration parameters.1.7Add all of the supplied filters.1.12Set theOutputDirectoryCreatorto use.1.12Set theOutputDirectoryProviderto use.org.junit.platform.testkit.engine.EngineTestKit.Builder.selectors(List<? extends DiscoverySelector>) 6.0Add all of the supplied discovery selectors.1.13Discover tests for the givenLauncherDiscoveryRequestusing theTestEnginewith the supplied ID.1.13Discover tests for the givenLauncherDiscoveryRequestusing the suppliedTestEngine.1.7Execute tests for the givenLauncherDiscoveryRequestusing theTestEnginewith the supplied ID.1.7Execute tests for the givenLauncherDiscoveryRequestusing the suppliedTestEngine.1.121.121.13Create a newConditionthat matches if and only if the TestDescriptor.getLegacyReportingName() () legacy reporting name} of anEvent's test descriptor is equal to the suppliedString.1.8Create a newConditionthat matches if and only if anEventmatches the suppliedCondition, its test descriptor is a container, and its unique id contains the simple names of the suppliedClassand all of its enclosing classes.1.8Create a newConditionthat matches if and only if anEventmatches the suppliedConditionand its test descriptor is a test.1.131.13Create a newConditionthat matches if and only if the unique id of anEvent's test descriptor matches the suppliedCondition.1.13Create a newConditionthat matches if and only if the unique id of anEvent's test descriptor is equal to the suppliedUniqueId.1.6Create a newConditionthat matches if and only if the unique id of anEvent's test descriptor contains all of the supplied strings.1.6Create a newConditionthat matches if and only if the unique id of anEvent's test descriptor contains all of the supplied strings.1.7Assert that all provided conditions are matched by an event contained in thisEventsobject, regardless of order.1.7Assert that all provided conditions are matched by an event contained in thisEventsobject.1.12Get the file entry publicationEventscontained in thisEventsobject.1.12Specify the number of expected file entry publication events.1.121.11
-
New ConstructorsConstructorAdded inDescription5.3Protected constructor allowing subclassing but not direct instantiation.5.3Protected constructor allowing subclassing but not direct instantiation.1.131.7Create a new
ForkJoinPoolHierarchicalTestExecutorServicebased on the suppliedParallelExecutionConfiguration.
-
New Enum ConstantsEnum ConstantAdded inDescription5.4Java 12.5.4Java 13.5.5Java 14.5.6Java 15.5.7Java 16.5.7.1Java 17.5.8.1Java 18.5.9Java 19.5.9Java 20.5.9.2Java 21.5.10Java 22.5.11Java 23.5.11Java 24.5.11.4Java 25.5.13.2Java 26.5.12An undefined JRE version.5.3IBM AIX operating system.5.9FreeBSD operating system.5.9OpenBSD operating system.5.9Select only those enum constants whose names match none of the patterns supplied via the
EnumSource.names()attribute.1.10Test plan execution events are rendered as they occur in a concise format.1.12Signals that aTestDescriptorpublished a file entry.
-
New Annotation Interface ElementsAnnotation Interface ElementAdded inDescription5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment version which is used as the upper boundary for the version range that determines if the annotated class or method should be disabled, specified as an integer.5.12Java Runtime Environment version which is used as the lower boundary for the version range that determines if the annotated class or method should be disabled, specified as an integer.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment versions on which the annotated class or method should be disabled, specified as integers.5.9Architectures on which the annotated class or method should be disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment version which is used as the upper boundary for the version range that determines if the annotated class or method should be enabled, specified as an integer.5.12Java Runtime Environment version which is used as the lower boundary for the version range that determines if the annotated class or method should be enabled, specified as an integer.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.7Custom reason to provide if the test or container is disabled.5.12Java Runtime Environment versions on which the annotated class or method should be enabled, specified as integers.5.9Architectures on which the annotated class or method should be enabled.5.7Custom reason to provide if the test or container is disabled.5.9How the temporary directory gets cleaned up after the test completes.5.9The name of the configuration parameter that is used to configure the default
CleanupMode.5.10Property name used to set the default temporary directory factory class name: "junit.jupiter.tempdir.factory.default"5.10Factory for the temporary directory.5.6Default order value for elements not explicitly annotated with@Order, equal to the value ofInteger.MAX_VALUE / 2.5.4Property name used to set the default test execution mode for top-level classes: "junit.jupiter.execution.parallel.mode.classes.default"5.4Property name used to set the default test execution mode: "junit.jupiter.execution.parallel.mode.default"5.10The reason for using the selected execution mode.5.12An array of one or more classes implementingResourceLocksProvider.5.12The target of a resource created fromResourceLock.value()andResourceLock.mode().5.10Configures the number of failures after which remaining repetitions will be automatically skipped.5.5Property name used to set the default timeout for all@AfterAllmethods: "junit.jupiter.execution.timeout.afterall.method.default".5.5Property name used to set the default timeout for all@AfterEachmethods: "junit.jupiter.execution.timeout.aftereach.method.default".5.5Property name used to set the default timeout for all@BeforeAllmethods: "junit.jupiter.execution.timeout.beforeall.method.default".5.5Property name used to set the default timeout for all@BeforeEachmethods: "junit.jupiter.execution.timeout.beforeeach.method.default".5.5Property name used to set the default timeout for all lifecycle methods: "junit.jupiter.execution.timeout.lifecycle.method.default".5.5Property name used to set the default timeout for all@TestFactorymethods: "junit.jupiter.execution.timeout.testfactory.method.default".5.5Property name used to set the default timeout for all@Testmethods: "junit.jupiter.execution.timeout.test.method.default".5.5Property name used to set the default timeout for all@TestTemplatemethods: "junit.jupiter.execution.timeout.testtemplate.method.default".5.5Property name used to set the default timeout for all testable methods: "junit.jupiter.execution.timeout.testable.method.default".5.5Property name used to set the default timeout for all testable and lifecycle methods: "junit.jupiter.execution.timeout.default".5.9Property name used to set the default thread mode for all testable and lifecycle methods: "junit.jupiter.execution.timeout.thread.mode.default".5.9The thread mode of this timeout.5.6Property name used to configure whether timeouts are applied to tests: "junit.jupiter.execution.timeout.mode".5.12Whethernullargument values are allowed.6.0Configure whether to enclose text-based argument values in quotes within display names.5.12Configure whether zero invocations are allowed for this parameterized test.5.115.115.12Configure how the number of arguments provided by anArgumentsSourceare validated.5.35.65.8Configure whether all arguments of the parameterized test that implementAutoCloseablewill be closed after their corresponding invocation.5.35.35.36.0Configure whether to enclose text-based argument values in quotes within display names.6.0.1The character used to denote comments when reading the CSV files.5.6The column delimiter string to use when reading the CSV files.5.5The empty value to use when reading the CSV files.5.8Controls whether leading and trailing whitespace characters of unquoted CSV columns should be ignored.5.7The maximum number of characters allowed per CSV column.5.6A list of strings that should be interpreted asnullreferences.5.1The number of lines to skip when reading the CSV files.5.8.2The quote character to use for quoted strings.5.8.2Configures whether the first CSV record should be treated as header names for columns.6.0.1The character used to denote comments in a text block.5.6The column delimiter string to use when reading the records.5.5The empty value to use when reading the records.5.8Controls whether leading and trailing whitespace characters of unquoted CSV columns should be ignored.5.7The maximum number of characters allowed per CSV column.5.6A list of strings that should be interpreted asnullreferences.5.8.2The quote character to use for quoted strings.5.8.1The CSV records to use as the source of arguments, supplied as a single text block; must not be empty.5.8.2Configures whether the first CSV record should be treated as header names for columns.5.12The starting enum constant of the range to be included.5.12The ending enum constant of the range to be included.5.5Thebooleanvalues to use as sources of arguments; must not be empty.5.1Thebytevalues to use as sources of arguments; must not be empty.5.1Thecharvalues to use as sources of arguments; must not be empty.5.1TheClassvalues to use as sources of arguments; must not be empty.5.1Thefloatvalues to use as sources of arguments; must not be empty.5.1Theshortvalues to use as sources of arguments; must not be empty.1.10One or more classes to select by their fully qualified names.1.9Fail suite if no tests were discovered.