Publish Build Reports

Version 2 by Steve Luo
on Jun 10, 2010 17:47.


compared with
Version 3 by Steve Luo
on Jun 10, 2010 18:22.


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

View page history


There are 2 changes. View first change.

 h2. Introduction
  
 Build reports are very important for detecting a project health. By adding your build reports to QuickBuild, the project health can be tracked very easily, and the most importantly QuickBuild can collect the statistics data from those reports. This will help you to analyze the project [build statistics|Working with Statistics] later. You may have a look at this [quick example|Publish Reports] for how to publish the reports.
  
 Following screenshot shows a typical Java project overview by adding some reports to QuickBuild:
 !buildOverview.png!
  
 h2. Supported Reports
  
 Following table lists all the reports supported in QuickBuild:
  
 h3. Java Category
  
 || Report Name || Version ||
 | [JUnit Report|Publish JUnit Report] | 3.8\+ |
 | [TestNG Report|Publish TestNG Report] | 5.7 |
 | [Fidbugs Report|Publish Findbugs Report] | 1.3.5\+ \\ |
 | [CheckStyle Report|Publish CheckStyle Report] | 4.1\+ |
 | [EMMA Report|Publish EMMA Report] | 2.1\+ |
 | [Cobertura Report|Publish Cobertura Report] | 1.9.2\+ \\ |
 | [PMD Report|Publish PMD Report] | 4.2.2 |
 | [Ivy Dependency Report|7.8 Adding Ivy Dependency Report] | \\ |
  
 h3. .NET Category
  
 || Report Name || Version ||
 | [MSTest Report|Publish MSTest Report] | |
 | [NUnit Report|Publish NUnit Report] | 2.0 |
 | [MBUnit Report|Publish MBUnit Report] | 2.4\+ |
 | [Fxcop Report|Publish Fxcop Report] | 1.35+ |
 | [NCover Report|Publish NCover Report] | 3.0+ |
  
  
 h3. 3rd Party Reports
  
 For reports not directly supported in QuickBuild, you can [publish HTML reports|Publish HTML Reports]. If you want to collect the statistics data, you can publish your [customized statistics reports|Add Custom Statistics Data].
  
 h2. Generic Step for Publishing Build Report
  
 To publish a build report in QuickBuild, you just need two steps:
 # Generate the build report by using [Ant|http://ant.apache.org], [Maven|http://maven.apache.org], [NAnt|http://nant.sourceforge.net], etc. When generating the build reports with those tools, the XML format should be used. QuickBuild only recognizes XML reports.
 # Add a publish step for the specific report. For example, for JUnit, add a publish junit step, for TestNG, add a publish TestNG step.
  
 !Screenshots^report_publish_step.png!
  !Screenshots^publishstep.png!
  
 That is all you need to do\! Both the reports and the statistics data for the reports will be collected automatically, and you can [view them in QuickBuild|Working with Reports] directly instead of generating external HTML report.
  
 There are two specified parameters for publishing XML reports in Quickbuild publish step.
  
 h3. Report Files/Patterns
 This parameter is used to specify the files/patterns which need to be processed. Path specified here is relative to workspace directory, for example *reports/junit/\*.xml* stands for all the files with *.xml* suffix under the *reeports/junit* sub directory under the workspace directory. Refer to [File Pattern Reference] for details of valid file patterns.
  
 h3. Report Set Name
 Sometimes, we need publish reports in different report set. For example, when we run tests with different platforms, such as Windows, Linux, Solaris, we can define several publish steps to collect the reports for each of them, we may define a step named *Publish Tests On Windows* and specify the report set name here as *On Windows*, and define another publish step named *Publish Tests on Linux* with the report set name here as *On Linux*, etc. Quickbulid will collect those reports seperately and aggregate them together on Dashboard, report tab and statistics page.
  
 Make sure the report set name is unique in one configuration for one kind of publish report step. One and only one can be empty. For example, if serveral steps for publish junit reports are defined, one can be empty for the report set name this will be recognized as 'default' report set in Quickbuild, and others should have different report set names. The report set names can be the same for different kinds of publish step. For example, 'With Tomcat' for Publish JUnit Step, and 'With Tomcat' for Publish TestNG step, the definitions are legal in Quickbuild.
  h3. Publish Report Step Attributes
 Below lists the specific attributes for publish report step:
 ||Attribute||Description||
 |Source Directory|Specify the directory under which to search xml files containing report data. A non-absolute path is considered to be relative to current workspace directory . If left empty, the workspace directory itself will be used.|
 |Files to Process|Use a [file pattern|File Pattern Reference] to specify the files need be published. Path specified here is relative to specified source directory, for example *reports/junit/\*.xml* means you want to publish all the files with *.xml* suffix under the *reeports/junit* sub-directory.|
 |Step Failure Condition|A BOOLEAN expression. Used to determine whether this step will be failed or not.|
 |Step Failure Message|Used to display a failure message on build overview tab when step is failed.|
 |Report Set Name|Sometimes, we need publish reports in different report set. For example, when we run tests with different platforms, such as Windows, Linux, Solaris, we can define several publish steps to collect the reports for each of them, we may define a step named *Publish Tests On Windows* and specify the report set name here as *On Windows*, and define another publish step named *Publish Tests on Linux* with the report set name here as *On Linux*, etc. Quickbulid will collect those reports seperately and aggregate them together on Dashboard, report tab and statistics page.
 {note}
 * The report set name should be unique in one configuration for one kind of publish report step.
 * One and only one can be empty. For example, if serveral steps for publish junit reports are defined, one can be empty for the report set name this will be recognized as 'default' report set in Quickbuild, and others should have different report set names.
 * For different kinds of publish step, the report set name can be the same. For example, 'With Tomcat' for Publish JUnit Step, and 'With Tomcat' for Publish TestNG step, this is allowed in QuickBuild.
 {note}