2025-12-01

This release writes more efficient test suites by default for both the CLI and IntelliJ plugin, enhances the dcover issues command, and introduces an opt-in caching mechanism to improve CLI performance.


Improved Test Efficiency & Quality

  • Efficient Test Suites by Default: Diffblue Cover now writes more efficient test suites by default in both the CLI and IntelliJ Plugin (for JUnit Jupiter), generating fewer tests without reducing coverage. In the CLI, the --new-diffblue-coverage option has been removed (use --ignore-existing-coverage for maximum tests). In the IntelliJ Plugin, this optimization can be disabled in the settings.

  • JaCoCo Exclusion Recommendations: To help produce more meaningful JaCoCo reports, Cover now identifies auto-generated classes and recommends their exclusion in the CLI output and logs, focusing coverage calculations on manually written code.

CLI Enhancements & Performance

  • dcover issues Summary: The dcover issues command now provides a complete overview by summarizing all issues grouped by type. For a detailed, prioritized list, use the --prompt mode, which respects pagination options like --limit and --skip.

  • Performance Caching: An opt-in caching mechanism is now available for time-consuming environment checks. Using the --use-cache or --cache options will improve performance on subsequent runs of commands such as dcover create.

IntelliJ Plugin Stability

  • Improved Environment Checks: Resolved an issue in the IntelliJ Plugin where Cover could fail with an internal error during environment checks. This fix improves stability and ensures test creation can proceed more reliably.


Enhancements

  • CLI: Diffblue Cover now helps produce more meaningful JaCoCo coverage reports by identifying auto-generated classes and recommending their exclusion in the CLI output and logs. This aligns with best practices, focusing coverage calculations on manually written code. [Ref: TG-23987]

  • Plugin: For JUnit Jupiter users, Diffblue Cover now writes more efficient test suites by default, generating fewer tests while maintaining coverage. This optimization can be disabled in the plugin settings. [Ref: TG-23922]

  • CLI: The dcover issues command now summarizes all issues grouped by type, providing a complete overview. For a detailed, prioritized list that respects pagination (--limit, --skip), use the --prompt mode. [Ref: TG-23920]

  • CLI: Diffblue Cover now writes more efficient test suites by default, generating fewer tests while maintaining coverage. The --new-diffblue-coverage option is removed. For maximum test generation, use the --ignore-existing-coverage option. [Ref: TG-23871]

  • CLI: Diffblue Cover now includes an opt-in caching mechanism for time-consuming environment checks. Using the --use-cache or --cache options improves performance on subsequent runs of commands like dcover create. [Ref: TG-23377]

Resolved Issues

  • Plugin: Resolved an issue in the IntelliJ Plugin where Diffblue Cover could fail with an internal error during environment checks. This fix improves stability, preventing rare failures and ensuring test creation can proceed more reliably. [Ref: TG-24016]

Known Issues

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

  • Using JDKs other than the supported Open JDK and Oracle JDK may produce unexpected results due to implementation differences. [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. The recommended workaround is to downgrade to Mockito 4.x. [Ref: TG-19610]

  • Reports: The total line count metric in Reports only includes Java code. Kotlin code is not 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]

  • When test formatting settings are changed, the Test Review feature may incorrectly remove the @ManagedByDiffblue annotation from tests, particularly in cases involving static import formatting changes. [Ref: TG-23750]

  • Plugin: Using the Test Review feature may create tests that have incompatible dependency injection systems. [Ref: TG-23935]

Last updated

Was this helpful?