7.6 Adding Cobertura Report

Version 8 by Robin Shen
on Jul 27, 2009 19:33.


compared with
Version 9 by Robin Shen
on Aug 06, 2009 18:15.


Key
These lines were removed. This word was removed.
These lines were added. This word was added.

View page history


There are 1 changes. View first change.

 To add [Cobertura|http://cobertura.sourceforge.net/index.html] report, you only need two steps:
 # Generate Cobertura *XML* report from [Ant|http://ant.apache.org] or [Maven|http://maven.apache.org] or any other build tool.
 # Publish Cobertura report in the [configuration|Working with Configurations].
  
 h2. Generate Cobertura Report
  
 QuickBuild will NOT generate [Cobertura|http://cobertura.sourceforge.net/index.html] report automatically, so first make sure the [Cobertura|http://cobertura.sourceforge.net/index.html] report is produced by [ANT|http://ant.apache.org] or by any other build tool. The following example shows how to generate Cobertura test results with [Ant Cobertura task|http://cobertura.sourceforge.net/anttaskreference.html]:
 {code:xml|title=Cobertura coverage report target in build.xml}
 <target name="instrument" depends="jar">
  <delete file="${basedir}/cobertura.ser" />
  <delete file="${build.dir}/cobertura.ser" />
  
  <cobertura-taskdef />
  
  <cobertura-instrument datafile="${build.dir}/cobertura.ser" todir="${build.instrumented.dir}">
  <fileset dir="${build.classes.dir}">
  <include name="**/*.class" />
  <exclude name="**/*Test.class" />
  <exclude name="net/sourceforge/cobertura/javancss/*.class" />
  </fileset>
  <fileset dir="${build.otherclasses.dir}">
  <include name="**/*.class" />
  <exclude name="**/*Test.class" />
  </fileset>
  </cobertura-instrument>
  </target>
  
  <target name="coverage-report">
  <cobertura-taskdef />
  
  <delete dir="${build.reports.dir}/coverage-xml" />
  <mkdir dir="${build.reports.dir}/coverage-xml" />
  <cobertura-report datafile="${build.dir}/cobertura.ser"
  destdir="${build.reports.dir}/coverage-xml"
  format="xml"
  >
  <fileset dir="${src.dir}">
  <include name="**/*.java" />
  </fileset>
  <fileset dir="${othersrc.dir}">
  <include name="**/*.java" />
  </fileset>
  </cobertura-report>
  
  <cobertura-check datafile="${build.dir}/cobertura.ser"
  totalbranchrate="50"
  totallinerate="50" />
  </target>
 {code}
 The code snippet will generate the XML reports for each test case, and the reports will be captured to '$\{build.reports.dir\}/coverage-xml' directory.
  
 h2. Publish Cobertura Report
  
  Just like all other [build reports|07. Publish Build Reports], you add Cobertura report by [adding a publish step|Working With Step] in a [configuration|Working with Configurations]. When you add publish Cobertura Report step, the following screen will be displayed:
  Just like all other [build reports|Publish Build Reports], you add Cobertura report by [adding a publish step|Working With Step] in a [configuration|Working with Configurations]. When you add publish Cobertura Report step, the following screen will be displayed:
  
 !Screenshots^report_publish_step.png!
  
 In Source Pattern field, QuickBuild uses Ant style file patterns to collect the reports, and the directory you specified is *relative* to the [workspace|Workspace Directory] directory.