This documentation relates to an earlier version of Clover.
View this page in the current documentation or visit the current documentation home.

Skip to end of metadata
Go to start of metadata

Changes in Clover-for-Ant 3.1.11

March 25, 2013

This is a bug fix release which addresses issues found in 3.1.10 and earlier versions of Clover-for-Ant.

Migration notes

1) Class names of Clover's Ant types have been changed from "com.cenqua.*" to "com.atlassian.*". As cloverlib.xml and cloverjunitlib.xml files from clover.jar have been updated accordingly, migration shall be transparent, unless your build scripts refers to a given class name directly. New class names are as follows:

  • clover-optimized-selector = com.atlassian.clover.types.CloverOptimizedTestSelector
  • clover-ant170-check = com.atlassian.clover.types.CloverAnt170CheckType
  • clover-optimized-testset = com.atlassian.clover.types.CloverOptimizedTestSet
  • always-run = com.atlassian.clover.types.CloverAlwaysRunTestSet

2) Clover property clover.offrails.coverage is no longer used. Instead of this, define <profile coverageRecorder="GROWABLE"> - see below.

3) The Clover-for-Maven1, Clover-for-Maven2&3 have been migrated from to (CLOV-1197). Also Clover-for-Grails code is hosted on Bitbucket.


1) It is possible to disable Clover for instrumented code at runtime. If you define:


property, then coverage data will not be recorded. This option can be useful in case you'd like to disable coverage recording for some subset of tests, without building code twice (i.e. with and without Clover instrumentation).


2) It is possible to define multiple runtime profiles for Clover and select one of them at runtime by a following property:

-Dclover.profile=<profile name>

Thanks to this you can run instrumented application in several configurations, without need to rebuild the code. Currently supported options are: <distributedCoverage> tag and coverageRecorder="type" attribute. In future more options will be added. Read <profiles> for more details.


3) It is possible to choose among three Clover's coverage recorder types:

  • FIXED - standard recorder with a fixed-size array for hit counts, which requires a presence of clover.db at runtime
  • GROWABLE - recorder with a dynamically resizeable array for hit counts, does not need clover.db at runtime
  • SHARED - recorder designed for large Grails applications

More details: Coverage Recorders.


4) The com.cenqua.clover.SnapshotPrinter tool is able to print content of the test optimization snapshot in the JSON format. 


JIRA issue list

See also change log for Clover-for-Maven2&3, Clover-for-Eclipse, Clover-for-IDEA, Clover-for-Grails.

  • No labels