Skip to content

Commit 25f769f

Browse files
committed
Merge pull request #148 from wennergr/teamcity-coverage-metrics
Changed the way teamcity metrices are reported
2 parents 33585ed + 72bdeb0 commit 25f769f

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

Diff for: src/main/scala/scoverage/ScoverageSbtPlugin.scala

+8-7
Original file line numberDiff line numberDiff line change
@@ -210,15 +210,16 @@ object ScoverageSbtPlugin extends AutoPlugin {
210210
crossTarget: File,
211211
log: Logger) {
212212

213-
// Teamcity only have a definition of line/method and class coverage
214213

215-
// Log branch coverage as line coverage
216-
log.info(s"##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='${coverage.invokedStatementCount}']")
217-
log.info(s"##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='${coverage.statementCount}']")
214+
def statsKeyValue(key: String, value: Int): String =
215+
s"##teamcity[buildStatisticValue key='${key}' value='${value}']"
218216

219-
// Log statement coverage as method coverage
220-
log.info(s"##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='${coverage.invokedBranchesCount}']")
221-
log.info(s"##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='${coverage.branchCount}']")
217+
// Log statement coverage as per: https://devnet.jetbrains.com/message/5467985
218+
log.info(statsKeyValue("CodeCoverageAbsSCovered", coverage.invokedStatementCount))
219+
log.info(statsKeyValue("CodeCoverageAbsSTotal", coverage.statementCount))
220+
221+
// Log branch coverage as a custom metrics (in percent)
222+
log.info(statsKeyValue("CodeCoverageBranch", "%.0f".format(coverage.branchCoveragePercent).toInt))
222223

223224
// Create the coverage report for teamcity (HTML files)
224225
if (createCoverageZip)

0 commit comments

Comments
 (0)