What's New > Version 2020.06.a

Determinate progress bar added

Release date: Jun 08, 2020

Indexing progress is now shown as a determinate progress bar, showing progress towards completion. The file currently being indexed is also now displayed.


Full Release Notes

Enhancements

  • CLI: Coloured output is now supported in Windows’ ‘Command Prompt’ and ‘Powershell’. [Ref: TG-11782]

  • IntelliJ Plugin: Indexing progress is now shown as a determinate progress bar, showing progress towards completion. The file currently being indexed is also now displayed. [Ref: TG-11635]

Resolved Issues

  • In some circumstances, actions performed by the user code being analysed can interfere with the actions of Cover. This has been fixed. [Ref: TG-11204]

  • Test case verification may fail when JUnit 4.11, or earlier, JAR files are provided by the user (for example, via a dependency in a project’s pom.xml). [Ref: TG-11937]

  • CLI: Repositories in ${M2_HOME}/settings.xml are not considered when Cover automatically determines user’s classpath. [Ref: TG-11913]

  • CLI: On some projects, an internal Cover error may result in a reduction of coverage and increase of E009: Unrecoverable runtime error reasons for not creating tests. [Ref: TG-11899]

  • CLI: Test verification may run indefinitely if an existing test gets stuck in a loop. Introduce a --verification-timeout option to set a time limit. [Ref: TG-11808]

  • Cover may generate tests, containing a Date() constructor, which will fail if executed in a different timezone. [Ref: TG-11740]

  • IntelliJ Plugin: Selecting ‘Write tests’ can sometimes result in the plugin crashing with java.lang.RuntimeException: Unable to find class 'com/diffblue/cover/instrumentation/TransientClassLoader'. [Ref: TG-11716]

  • IntelliJ Plugin: Selecting ‘Write tests’ on multiple classes, in quick succession, results in tests not being generated for some classes. [Ref: TG-11713]

  • CLI: .diffblue directory is created in the terminal’s current working directory, rather than the path specified by --working-directory. [Ref: TG-11375]

  • CLI: Classpaths containing a space character can cause the CLI to crash with an InvalidPathException. [Ref: TG-10995]

Known Issues

  • Wrong reason for not creating essential tests for methods in classes without accessible constructors. [Ref: TG-10794]

  • CLI: Windows: creating config.json by outputting --example-config as file causes exceptions. [Ref: TG-11198]

  • CLI: Analyzing a project that opens lots of files may crash dcover. [Ref: TG-11455]

  • CLI: All tests may be discarded in test verification when using --config. [Ref: TG-11475]

  • CLI: dcover clean --working-directory throws an error if --test-output-dir is not provided. [Ref: TG-11665]

  • CLI: dcover fails to generate tests, reporting java.lang.OutOfMemoryError, when analysing projects which spawn a quantity of threads in excess of the operating system’s process thread limit. [Ref: TG-11680]

  • CLI: dcover clean --failing fails when used with a Gradle project. [Ref: TG-11707]

  • IntelliJ Plugin: Not clicking “Suggest Assertions” for a long period (~1 hour) leads to user getting the message “Cannot generate assertions” for every subsequent assertion suggestion attempt. [Ref: TG-11817]

  • Tests are not generated for methods of Spring controllers that contain an autowired field. [Ref: TG-11835]

  • IntelliJ Plugin: Selecting ‘Write tests’ across multiple modules, in quick succession, can cause the plugin to crash with a NullPointerException. [Ref: TG-12022]

  • CLI: Test verification may fail on a Gradle project due to an incompatibility between Gradle and Cover. If you encounter this issue, run with --skip-test-verification. [Ref: TG-12045]

  • CLI: Coloured text doesn’t appear in output when running from Powershell window. [Ref: TG-12004]

Dependencies for written tests

  • JUnit: 4.7-5.6