2025-02-02
This release of Cover enhances flexibility, security, and reliability with several key improvements:
Ant Build System Support: Cover CLI now supports Ant projects. Learn more.
Excluding Trivial Methods: A new CLI option allows users to exclude trivial methods from test generation.
SSO Integration for Cover Reports: Enterprise users can now integrate with existing SSO providers for authentication, eliminating the need for a proxy server. Learn more.
Spring Controller Improvements: Test generation now produces more concise annotations and better handles
@ControllerAdvice
classes.Bug Fixes: This release resolves issues related to:
Gradle compilation parsing
Automatic Spotless formatting
Module path errors in multi-module projects
Important Notices
Test Review Plugin: Enabled by Default (from 2025.03.01)
Starting with the next release, the Test Review feature in the IntelliJ Plugin will be enabled by default.
Tests must be accepted manually before appearing in your codebase.
You can edit or reject tests as needed.
If you haven’t tried it yet, enable it now from the IntelliJ Plugin's Diffblue Settings menu.
Read the Test Review documentation.
CLI: Deprecation of Build System Customization Options
As of this release, the following CLI options have been deprecated:
--build-system-configuration
--ignore-stylechecks
--jacoco-command-diffblue
--jacoco-command-manual
--jacoco-xml-test-report
--preflight-test-command
--preflight-test-timeout
--validation-timeout
--validation-command
Migrating to a DiffblueBuild.yaml
file is recommended for build system integration. See the configuration guide for more details.
Enhancements
CLI: Cover now includes an
--exclude-trivial-methods
flag for CLI users to opt-out of testing trivial methods like getters and setters. This provides more control over test generation, helping avoid unnecessary tests for simple methods. [Ref: TG-22709]CLI: Build system customization options (e.g.,
--build-system-configuration
) are now deprecated. Configure Cover using aDiffblueBuild.yaml
file for improved build system integration. [Ref: TG-22640]CLI: Cover now supports projects which use Ant build systems. [Ref: TG-22631]
CLI: Diffblue now offers Ant build system tasks via our public Maven repository, simplifying integration for Ant projects by enabling the use of a Maven dependency instead of specifying an absolute JAR file path. [Ref: TG-22611]
CLI: Cover's environment and test creation summaries in log files now include the project module name, improving clarity and searchability. [Ref: TG-22581]
Cover now generates
@MethodsUnderTests
annotations more concisely using available imports, enhancing test code readability and simplifying maintainability. [Ref: TG-22558]Reports: Enterprise users can now integrate their existing SSO providers, such as Keycloak, for secure authentication and role-based access control. This enhances data security, streamlines user management, and ensures compliance with enterprise policies. [Ref: TG-22509]
Cover now more accurately identifies essential mock dependencies in Spring applications, resulting in tests with reduced unused mocking and improved readability. [Ref: TG-22411]
Cover now generates better tests for Spring Controllers. Cover considers
@ControllerAdvice
classes when writing tests, leading to more complete and accurate results for applications using Spring's exception handling. [Ref: TG-20569]
Resolved Issues
Resolved an issue which caused Cover to incorrectly parse compilation failures on Gradle projects when using Java 17.0.14+ and newer versions. [Ref: TG-22677]
Resolved an issue where Cover did not automatically apply Spotless, when available, for test code formatting in Gradle builds. [Ref: TG-22658]
Resolved an issue where Cover failed to run on certain multi-module Gradle projects due to module path errors. This caused
Failed to run a simple example test
(E011) warnings during execution. [Ref: TG-22592]
Known Issues
Plugin: Cover incorrectly provides a menu option to write tests for a test file. [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]
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]
In some circumstances, 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]
Last updated
Was this helpful?