Coverage report format
The project for which you want to import coverage data should contain an XML file complying with the attached XSD schema.
It should look like the following sample:
<lineToCover lineNumber="2" covered="false"/>
<lineToCover lineNumber="3" covered="true" branchesToCover="8" coveredBranches="7"/>
The root node should be named "coverage". Its version attribute should be set to "1".
Insert a "file" element for each file which can be covered by tests. Its "path" attribute can be either absolute or relative to the root of the module.
Inside a "file" element, insert a "lineToCover" for each line which can be covered by unit tests. It can have the following attributes:
- "lineNumber" (mandatory)
- "covered" (mandatory): boolean value indicating whether tests actually hit that line
- "branchesToCover" (optional): number of branches which can be covered
- "coveredBranches" (optional): number of branches which are actually covered by tests
The path to the XML file containing coverage data can be configured in 2 ways:
- In the SonarQube page of the project: "Configuration" -> "Settings" -> "Generic Coverage"
- By setting the
This path can be either absolute or relative to the root of the module.
Coverage data should be imported on the next analysis. Check the analysis logs if this is not the case.