2021-06-02
Generating assertions for objects that implement functional interfaces
Diffblue Cover now produces tests for methods that return objects with types such as Function
, BiFunction
, IntPredicate
etc. It can write tests for methods returning objects whose type is a functional interface type, as defined in https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html#package.description.
For code written in a functional programming style, this means a significant increase in coverage.
Shorter unique names for run configurations
Run configuration names have been shortened whilst maintaining their uniqueness. This ensures both class and method names are easier to read.
The new standard for method names no longer includes a signature and is in the format: simple class name . method name
.
Diffblue Cover Community Edition is available for use with commercial code
Community Edition allows you to write tests for both open source and commercial code. This means you can now use Diffblue Cover Community Edition at work completely for free. Visit our documentation to learn more about how you can use Diffblue Cover at work, and also see our End-User License Agreement{: target="_blank" rel="noopener"}.
Feedback
If you have feedback, questions or requests regarding the Diffblue Cover IntelliJ Plugin, please contact us on the Community Forum. We would love to hear about what is important to you and what you would like to see in upcoming releases.
How do I automatically maintain all of these tests?
Use Diffblue Cover on any CI platform to automatically update your unit tests and catch regressions for every commit - watch this video to learn more.
Enhancements
Cover now writes assertions for
equals
methods with unequal objects as parameters. [Ref: TG-14662]Cover now writes assertions for methods with a 'functional interface' return value, such as
IntPredicate
,Function
orSupplier
. [Ref: TG-13579]Cover now provides more understandable and user-friendly error reporting to help diagnose and resolve issues. [Ref: TG-13589]
CLI: The configuration file format for Cover has now been simplified, allowing command line options to be supplied in a text file, e.g.
config.txt
, which can be referenced by runningdcover create @config.txt
. This replaces the existing--config
and--example-config
options for supplying configuration options via a file. [Ref: TG-14556]IntelliJ Plugin: Cover now creates IntelliJ IDEA ‘run configurations’ with shorter names. [Ref: TG-14619]
Resolved Issues
Resolved an issue which provoked Cover to write nondeterministic tests involving
Calendar.getInstance
. [Ref: TG-14481]IntelliJ Plugin: Resolved an issue which prevented Cover's 'write test' flask icon from writing tests for classes in default packages. [Ref: TG-14757]
IntelliJ Plugin: Resolved an issue which, in some circumstances, whilst using Cover's 'write test' flask icon on a just-created project, provoked a
Reflection operation has failed
error. [Ref: TG-14704]IntelliJ Plugin: Resolved an issue which prevented IntelliJ IDEA 'run configurations' from being created when clicking 'Write Tests' on a class from IntelliJ IDEA's top navigation bar. [Ref: TG-14687]
IntelliJ Plugin: Resolved an issue which, in some circumstances, provoked an IntelliJ IDEA
NullPointerExceptions
error report. [Ref: TG-14633]IntelliJ Plugin: Resolved an issue which, in some circumstances, whilst using Cover's 'write test' flask icon, provoked an IntelliJ IDEA
IndexOutOfBoundsException
error report. [Ref: TG-14628]IntelliJ Plugin: Resolved an issue which, in some circumstances, whilst using Cover's 'write test' flask icon, provoked an IntelliJ IDEA
InvalidPathExceptions
error report. [Ref: TG-14627]IntelliJ Plugin: Resolved an issue which, in some circumstances, provoked an IntelliJ IDEA
Argument for @NotNull parameter 'module' of com/intellij/openapi/roots/ModuleRootManager.getInstance
error report. [Ref: TG-14626]IntelliJ Plugin: Resolved an issue which, in some circumstances, provoked an IntelliJ IDEA
PsiInvalidElementAccessException
error report. [Ref: TG-14487]IntelliJ Plugin: Resolved an issue which, whilst writing tests for projects with
#
in their file path, provoked an IntelliJ IDEAURI has a fragment component
error report. [Ref: TG-13913]IntelliJ Plugin: Resolved an issue which, in some circumstances, provoked an IntelliJ IDEA
Document is locked by write PSI operations
error report. [Ref: TG-13148]
Known Issues
CLI:
dcover clean --failing
fails when used with a Gradle project. [Ref: TG-11707]IntelliJ Plugin:
Diffblue Cover was unable to create an index
error may appear if switching project happens before Cover has finished indexing. [Ref: TG-13772]
Last updated