2023-01-02

Automatically find and resolve project dependency issues in the IntelliJ Plugin

To get the best results from the Diffblue Cover IntelliJ Plugin we check that you have compatible versions of dependencies. Until now you have had to manually adjust your Maven/Gradle configuration to do this. In Diffblue Cover 2023.01.02 we provide a link to fix all issues which will add required dependencies as necessary to get the best results from Diffblue Cover.

Validate your project is ready to run Diffblue Cover CLI

Much like the Diffblue Cover IntelliJ Plugin, to get the best results from Diffblue in the shortest time possible it is important that your project is structured in the best way and with supported versions of dependencies. In this release, we introduce the unlicensed --preflight option which allows you to ensure that your project is ready for Diffblue Cover. Use preflight to find common problems in Maven/Gradle project structures as well as checking that the dependencies in your project are compatible.

  $ dcover create --preflight
  INFO  Diffblue Cover 2023.01.02-4cf7d6f
  INFO
  INFO  Detecting environment:
  INFO  ----------------------
  INFO  Java version: 11.0.15
  INFO  Selected build system: Maven
  INFO  Selected classpath from build system Maven
  INFO  Selected Java language compliance level: 1.8, from build system
  INFO  Selected test framework: JUnit Jupiter 5
  INFO  Selected test validation: enabled
  INFO  Prefixes for filtering classes/methods:
  INFO    io.diffblue.corebanking
  INFO    io.diffblue.corebanking.account
  INFO    io.diffblue.corebanking.client
  INFO    io.diffblue.corebanking.compliance
  INFO    io.diffblue.corebanking.compliance.rules
  INFO    io.diffblue.corebanking.datamanagement
  INFO    io.diffblue.corebanking.transaction
  INFO    io.diffblue.corebanking.ui
  INFO    io.diffblue.corebanking.ui.menu
  INFO  Gathering methods to test...
  INFO
  INFO  Environment summary:
  INFO  --------------------
  INFO
  INFO  Java version                  11.0.15             SUCCESS
  INFO  Build system                  Maven               SUCCESS
  INFO  Testing framework             JUnit Jupiter 5     SUCCESS
  INFO  Surefire version              3.0.0-M3            SUCCESS
  INFO  Launcher                      JUnit Jupiter       SUCCESS
  INFO  Test validation               Enabled             SUCCESS
  INFO  Mocking Framework             Mockito 4.2.0       SUCCESS
  INFO  Custom input rules                                SUCCESS
  INFO
  INFO  Environment check status: SUCCESS
  INFO  Check log file at /Users/pipeline/corebanking-cf/.diffblue/log/user-20230124T164802.log for more details or run dcover with --verbose option.
  INFO  Finished in 23s

Enhancements

  • CLI: The create command now has a --preflight option to run the project environment checks without creating tests. [Ref: TG-18507]

  • Cover now supports JUnit 5.9.2. [Ref: TG-18270]

  • Cover now supports Mockito 4.11.0. [Ref: TG-18271]

  • IntelliJ Plugin: Project dependencies reported as missing can now be added with a single click in the tool panel. [Ref: TG-18207]

  • IntelliJ Plugin: Tool panel now uses the standard warning icon. [Ref: TG-18117]

  • CLI: Cover now warns (with E109) if JVM max heap size is set below the minimum of 4GB. [Ref: TG-17949]

  • CLI: Warnings about problematic class and method name templates are now errors. [Ref: TG-17659]

Resolved Issues

  • Resolved an issue where telemetry settings can get corrupted. [Ref: TG-18487]

  • Resolved an issue which could cause Cover to stop creating tests due to F009 Internal error with the message IllegalArgumentException: toClassType cannot be called on a type variable. [Ref: TG-18477]

  • IntelliJ Plugin: Fix hyperlinks opening in a new browser in more exotic Linux flavours. [Ref: TG-18425]

  • Dependency recommendations now include the recommended level of scope (in Maven) or implementation (in Gradle). [Ref: TG-18050]

  • Improved communication of problems with Maven JaCoCo plugin versions. [Ref: TG-17865]

  • Reports: Resolved an issue that could prevent large report files from being uploaded to Cover Reports. [Ref: TG-17240]

Known Issues

  • Cover may produce tests for JUnit 4.10 and lower that do not compile due to the use of assertNotEquals. [Ref: TG-17605]

  • Reports: Firefox users may encounter It seems like we encountered an error. Try refreshing this page or contact your administrator. while loading Coverage Reports. [Ref: TG-18257]

  • IntelliJ Plugin: Upgrading to IntelliJ IDEA 2022.3 may, in some circumstances, cause existing run configurations to no longer produce tests. Removing any run configurations for that entity and writing tests again will recreate a working run configuration. [Ref: TG-18282]

  • CLI: Cover fails to detect and work with Gradle 7.6. [Ref: TG-18548]

Last updated