2025-09-01

This release enhances support for key Java frameworks including Spring, JUnit 5, and Mockito. Test readability is also improved with better method inlining for fluent builders, and the command-line interface benefits from significant performance gains.


Framework & Library Support

  • Enhanced Spring Support: Cover now provides improved support for Spring projects that rely on XML-based context configurations.

  • Updated JUnit 5 Support: Cover now supports writing tests using the JUnit Jupiter 5.13.4 API. This allows you to generate tests for projects that use this newer version of the framework.

  • Updated Mockito 5 Support: Cover now supports Mockito Core 5.19.0, ensuring that Cover can generate tests for projects that depend on this newer version of the mocking framework.

Improved Test Readability

  • Improved Method Inlining: Cover now generates more readable tests by improving how it inlines method calls, especially for fluent-style builders. Please be aware that existing tests using these patterns may be updated to reflect this improvement.

CLI Enhancements

  • Improved Performance: The list-modules and upload CLI commands now have significantly improved performance, resulting in faster project analysis and interaction.


Important Notices

Action Required

  • Action Required for users of DiffblueBuild.yaml: As announced in 2025.08.02's release notes, a breaking change is now in effect for DiffblueBuild.yaml to enable a faster upload command. To ensure compatibility, projects with an existing DiffblueBuild.yaml file must be manually updated to add a new classpath phase. Please see our documentation for detailed instructions.


Enhancements

  • Diffblue Cover now supports and recommends JUnit Jupiter API version 5.13.4, ensuring compatibility for writing tests against projects using this newer version of the JUnit 5 testing framework. [Ref: TG-23719]

  • Diffblue Cover now supports Mockito Core version 5.19.0. This update allows Diffblue Cover to write tests for projects using the latest features of this mocking framework, ensuring continued compatibility. [Ref: TG-23718]

  • CLI: Diffblue Cover now reports a specific error (E097) instead of a generic internal error (F009) when an https URL is incorrectly used to connect to a non-SSL Cover Reports server, providing more precise feedback for troubleshooting. [Ref: TG-23707]

  • Diffblue Cover now provides improved support for Spring Boot XML context configurations, especially in conjunction with @MockBean. This allows Diffblue Cover to write more comprehensive unit tests for Spring Boot projects that rely on XML-based configuration. [Ref: TG-23495]

  • CLI: Diffblue Cover now executes the list-modules and upload CLI commands significantly faster by optimizing how the project's classpath is processed. [Ref: TG-22625]

  • Diffblue Cover now has improved inlining logic for fluent-style method calls, particularly for builder patterns. This results in higher quality, more readable tests. Note that existing tests for these patterns will be updated. [Ref: TG-20259]

Resolved Issues

  • Resolved an issue that prevented Diffblue Cover from writing tests for certain Spring Controllers. Diffblue Cover now correctly uses a fully configured Jackson ObjectMapper, rather than creating a default instance. [Ref: TG-23713]

  • Resolved an issue that could prevent test creation when generating mocks for code with optional dependencies. Diffblue Cover now more reliably writes tests for methods that reference classes not present on the classpath, improving overall test generation. [Ref: TG-23686]

Known Issues

  • Plugin: Diffblue Cover incorrectly displays a menu option to write tests for existing test files. [Ref: TG-17163]

  • Cover supports Open JDK and Oracle JDK; results with other JDKs may differ due to the variability in their implementations of Java. [Ref: TG-19345]

  • Cover may encounter an F009 (Internal error) caused by a ClassCircularityError involving org/mockito/configuration/MockitoConfiguration when writing tests with Mockito 5. To avoid this, use an earlier version of Mockito. Downgrading to Mockito 4.x is the recommended workaround. [Ref: TG-19610]

  • Reports: Cover only counts Java code towards the total line count metrics. Kotlin code is not currently included. [Ref: TG-22088]

  • Reports: Total lines of code metric can incorrectly count a multi-line comment at the end of a line of code, resulting in fewer than expected lines counted. [Ref: TG-22089]

  • Reports: Following an upgrade, the 'Total Lines of Code' card may show 0 until a new reports bundle has been uploaded. [Ref: TG-22094]

  • Cover may write more simplistic tests with less meaningful assertions when Spring Boot dependency injection is disabled. [Ref: TG-22102]

  • In some circumstances, Cover will still write Spring Boot tests when Spring Boot dependency injection is disabled. [Ref: TG-22103]

  • Cover may write failing TestNG tests when Spring Boot dependency injection is disabled. [Ref: TG-22107]

  • Plugin: On some displays, the Test Review subsection title 'Tests for review' is malformed. [Ref: TG-22805]

  • Diffblue Cover does not currently support test creation for projects using Java 24; please use JDK 21 or lower. [Ref: TG-22920]

Last updated

Was this helpful?