Date of Release: ❓
Scope: Bug fixes since 5.7.0
For a complete list of all closed issues and pull requests for this release, consult the 5.7.1 milestone page in the JUnit repository on GitHub.
-
For compatibility with
JarInputStream
, all JARs now containMETA-INF/
andMETA-INF/MANIFEST.MF
as their first entries again.
-
StringUtils.nullSafeToString()
now returns"null"
if the invocation oftoString()
on the supplied object returnsnull
. Although this is an internal utility, the effect of this change may be witnessed by end users and test engine or extension authors. -
Method
scanForClassesInPackage(String)
inClasspathScanner
now returns a valid list of class names when the package name is equal to the name of a module on the module path. -
The legacy XML report now always includes container-level failures (e.g. from
@BeforeAll
Jupiter lifecycle methods).
-
If the
toString()
implementation of an argument passed to a@ParameterizedTest
method returnsnull
, the display name formatter for the parameterized test now treats the name of the corresponding argument as"null"
instead of throwing an exception. This fixes a regression introduced in JUnit Jupiter 5.7.0. -
Creator functions passed to
ExtensionContext.Store.getOrComputeIfAbsent()
are now only called once even if they throw an exception.
-
The user guide now explains Nested Tests in more detail.
-
New utility method in
TestInstancePreDestroyCallback
helps to ensure all test instances are processed when used in conjunction with@Nested
tests. -
JAVA_17
has been added to theJRE
enum for use with JRE-based execution conditions.