Release notes for release 2020.11.04

Release date: November 23, 2020

This release includes support for Spring profiles (@Profile annotation). It also includes improvements that allow the generation of assertions for methods that return Maps, Lists and Sets. The IntelliJ plugin now has an option for displaying tests for which we didn't find suitable assertions.

Enhancements

  • IntelliJ Plugin: Cover is now able to create incomplete tests, if it was unable to find a suitable assertion. Incomplete tests contain a //TODO comment providing further guidance. This behavior is controllable via the plugin settings and turned on by default. [Ref: TG-13114]

  • Cover now produces assertions on the content of List containers in more circumstances. [Ref: TG-13045]

  • Cover now produces assertions on the size of List, Map and Set containers in more circumstances. [Ref: TG-13044]

  • CLI: Cover now logs a message to the console if a class, necessary to write a test, is missing. [Ref: TG-13011]

  • Cover's logging and guidance, in scenarios where dependencies are missing, has been improved. [Ref: TG-13007]

  • Cover is now able to create tests that set the Spring active profile (@ActiveProfiles annotation) as specified by the --active-profiles CLI option or via the 'Active Profiles' plugin setting. [Ref: TG-11506]

Resolved Issues

  • CLI: Resolved an issue where, whilst attempting to write tests for some methods, Exception: java.lang.AssertionError: This should never happen may be incorrectly logged to the console. [Ref: TG-13143]

  • CLI: Resolved an issue where, on some Maven projects, We cannot load the Spring Boot application may be logged to the console. [Ref: TG-13137]

  • CLI: Resolved an issue where using --verbose results in each testable method being logged to the console twice. Duplicate logging was also present in log files. [Ref: TG-13105]

  • IntelliJ Plugin: Resolved an issue where Cover may unnecessarily rescan .jar files during indexing. [Ref: TG-13080]

  • IntelliJ Plugin: Resolved an issue where Logfile location is incorrectly shown, as a notification, each time 'Write tests' is selected. [Ref: TG-13051]

  • IntelliJ Plugin: Resolved an issue where, in some cases, whilst attempting to write tests for a method, Unable to construct TIR and superfluous details are logged to the IntelliJ event log. [Ref: TG-13050]

  • IntelliJ Plugin: Resolved an issue where, when 'Generate boilerplate tests' is enabled, the IntelliJ event log shows an attempt to write a test for a method which is considered not valuable to test. [Ref: TG-13049]

  • IntelliJ Plugin: Resolved an issue where, in some cases, closing an IntelliJ project whilst Cover is indexing may lead to an AssertionError being shown. [Ref: TG-12809]

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: 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]

  • 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]

  • IntelliJ Plugin: Large multi-module Gradle projects may take a long time to index. [Ref: TG-12923]

Dependencies for written tests

  • JUnit: 4.7-5.7

results matching ""

    No results matching ""