28.7. Coverage

28.7.1. Description

Coverage reduction function computes a single telemetry stream representing unit test coverage information.

28.7.2. Parameter

Table 28.6. 

ParameterDescriptionDefault
modeOne of 'Percentage', 'NumCovered', or 'NumUncovered'.Percentage
filePatternAnt-like file pattern specifying the files to be included in computation.**
granularityUnit test granularity, such as 'class', 'method', 'line', 'branch', etc.method

28.7.3. Example

Example 28.8. Java Line-Level Coverage

streams CoverageStream(filePattern, granularity) = {
   "Coverage Percentage",
   Coverage("Percentage", filePattern, granularity)
};

y-axis yAxis(label) = {label};

chart CoverageChart(filePattern, granularity) = {
  "Coverage Percentage", 
  (CoverageStream(filePattern, granularity), yAxis("Coverage %"))
};

draw CoverageChart("**/*.java", "line");

This chart shows line level unit test coverage of Java code. It indicates that coverage seemed to be stable around 63% at the beginning of the time period, then, after a precipitous drop to 55%, has re-stabilized around 60%.