Full name:
com.atlassian.maven.plugins:maven-clover2-plugin:2.3.1:check
Description:
Verify Test Percentage Coverage (TPC) from an existing Clover database and fail the build if it is below the defined threshold. The check is done on main Clover databases and also on merged Clover databases when they exist.
Attributes:
verify.| Name | Type | Since | Description |
|---|---|---|---|
| cloverMergeDatabase | String |
- |
The location of the merged clover database to create when running a
report in a multimodule build. Default value is: ${project.build.directory}/clover/cloverMerge.db. |
| project | MavenProject |
- |
The Maven project instance for the executing project.
Note: This is passed by Maven and must not be configured by the user. |
| Name | Type | Since | Description |
|---|---|---|---|
| cloverDatabase | String |
- |
The location of the Clover database
. Default value is: ${project.build.directory}/clover/clover.db. |
| contextFilters | String |
- |
Comma or space separated list of Clover contexts (block, statement or method filers) to exclude when generating coverage reports. |
| failOnViolation | boolean |
- |
Do we fail the build on a violation? The default is true but there
are some edge cases where you want to be able to check what would
fail but without actually failing the build. For example you may
want to let the build continue so that you can verify others checks
that are executed after the Clover checks. Default value is: true. |
| flushInterval | int |
- |
When the Clover Flush Policy is set to "interval" or threaded this
value is the minimum period between flush operations (in
milliseconds). Default value is: 500. |
| flushPolicy | String |
- |
The Clover flush
policy
to use. Valid values are directed,
interval and threaded. Default value is: threaded. |
| historyDir | File |
- |
The location where historical Clover data is located.
Allows you to specify a location for historical build data, along with a configurable threshold expressed as a percentage ? used to cause the build to fail if coverage has dropped. This attribute is passed down to specified packages, then the same test is done for these at the package level. This will only be used if there is no targetPercentage parameter set. Default value is:${project.build.directory}/clover/history. |
| historyThreshold | String |
- |
The percentage threshold to use if clover-check is checking
coverage against historical clover data. This is the amount of
leeway to use when comparing the current build's coverage with that
of the last build. Default value is: 0%. |
| jdk | String |
- |
Whether the Clover instrumentation should use the Clover
jdk14, jdk15 or jdk16 flags
to parse sources. Valid values are 1.4, 1.5 and 1.6 . |
| license | String |
- |
The full Clover license String to use. If supplied, this
certificate will be used over licenseLocation. NB.
newline chars must be preserved. A trial Clover license can be
generated
here
. |
| licenseLocation | String |
- |
A Clover license file to be used by the plugin. The plugin tries to resolve this parameter first as a resource, then as a URL, and then as a file location on the filesystem. A trial Clover license can be generated here . |
| skip | boolean |
- |
A flag to indicate not to run clover for this execution. If set to
true, Clover will not be run. Default value is: false. |
| targetPercentage | String |
- |
The Test Percentage Coverage (TPC) threshold under which the plugin will report an error and fail the build. |
| waitForFlush | boolean |
- |
If true we'll wait 2*flushInterval to ensure coverage data is
flushed to the Clover database before running any query on it.
Note: The only use case where you would want to turn this off is if you're running your tests in a separate JVM. In that case the coverage data will be flushed by default upon the JVM shutdown and there would be no need to wait for the data to be flushed. As we can't control whether users want to fork their tests or not, we're offering this parameter to them. Default value is:true. |
The location of the Clover database .
java.lang.StringNo${maven.clover.cloverDatabase}${project.build.directory}/clover/clover.dbThe location of the merged clover database to create when running a report in a multimodule build.
java.lang.StringYes${maven.clover.cloverMergeDatabase}${project.build.directory}/clover/cloverMerge.dbComma or space separated list of Clover contexts (block, statement or method filers) to exclude when generating coverage reports.
java.lang.StringNo${maven.clover.contextFilters}Do we fail the build on a violation? The default is true but there are some edge cases where you want to be able to check what would fail but without actually failing the build. For example you may want to let the build continue so that you can verify others checks that are executed after the Clover checks.
booleanNo${maven.clover.failOnViolation}trueWhen the Clover Flush Policy is set to "interval" or threaded this value is the minimum period between flush operations (in milliseconds).
intNo${maven.clover.flushInterval}500The Clover flush
policy
to use. Valid values are directed,
interval and threaded.
java.lang.StringNo${maven.clover.flushPolicy}threadedThe location where historical Clover data is located.
Allows you to specify a location for historical build data, along with a configurable threshold expressed as a percentage ? used to cause the build to fail if coverage has dropped. This attribute is passed down to specified packages, then the same test is done for these at the package level. This will only be used if there is no targetPercentage parameter set.
java.io.FileNo${maven.clover.historyDir}${project.build.directory}/clover/historyThe percentage threshold to use if clover-check is checking coverage against historical clover data. This is the amount of leeway to use when comparing the current build's coverage with that of the last build.
java.lang.StringNo${maven.clover.historyThreshold}0%jdk :
Whether the Clover instrumentation should use the Clover
jdk14, jdk15 or jdk16 flags
to parse sources. Valid values are 1.4, 1.5 and 1.6 .
java.lang.StringNo${maven.clover.jdk}license :
The full Clover license String to use. If supplied, this
certificate will be used over licenseLocation. NB.
newline chars must be preserved. A trial Clover license can be
generated
here
.
java.lang.StringNo${maven.clover.license}A Clover license file to be used by the plugin. The plugin tries to resolve this parameter first as a resource, then as a URL, and then as a file location on the filesystem. A trial Clover license can be generated here .
java.lang.StringNo${maven.clover.licenseLocation}project :
The Maven project instance for the executing project.
Note: This is passed by Maven and must not be configured by the user.
org.apache.maven.project.MavenProjectYes${project}skip :
A flag to indicate not to run clover for this execution. If set to true, Clover will not be run.
booleanNo${maven.clover.skip}falseThe Test Percentage Coverage (TPC) threshold under which the plugin will report an error and fail the build.
java.lang.StringNo${maven.clover.targetPercentage}If true we'll wait 2*flushInterval to ensure coverage data is flushed to the Clover database before running any query on it.
Note: The only use case where you would want to turn this off is if you're running your tests in a separate JVM. In that case the coverage data will be flushed by default upon the JVM shutdown and there would be no need to wait for the data to be flushed. As we can't control whether users want to fork their tests or not, we're offering this parameter to them.
booleanNo${maven.clover.waitForFlush}true