在 Jenkins 中显示 SCCT 覆盖率

Posted

技术标签:

【中文标题】在 Jenkins 中显示 SCCT 覆盖率【英文标题】:Display SCCT coverage in Jenkins 【发布时间】:2012-08-19 00:10:15 【问题描述】:

我们已经让 SCCT 生成了一些漂亮的网页,展示了我们的单元测试的覆盖范围。现在我们想将它集成到我们的 Jenkins 持续集成构建中。

我已经创建了一个 Jenkins 作业来运行 SCCT 测试,但是如何 a) 如果覆盖率低于 n% 和 b) 如何显示这些漂亮的网页? p>

构建是一个 maven-multi-module 项目。

干杯

【问题讨论】:

【参考方案1】:

我们正在使用 jenkins cobertura 插件。 SCCT 为每个模块发出一个 cobertura 格式的覆盖 xml 文件(我一开始没有发现),cobertura 插件会整理这些文件。一个问题是 cobertura 插件需要降级到 1.3,否则它会认为 mojo 没有运行并且不执行任何操作。

【讨论】:

只是未来的更新。自 version 1.8 of the Cobertura plugin(2012 年 12 月)以来,它现在与 SCCT 完美配合 - mojo 问题已得到解决。【参考方案2】:

由于其他覆盖工具(如 cobertura)可以通过 jenkins 插件实现这一点,因此您也可以

将 SCCT 的输出转换为类似于现有工具的结果,并使用匹配的 jenkins 插件。

编写自己的 jenkins 插件,可能从现有插件中借用代码用于其他覆盖工具。

【讨论】:

以上是关于在 Jenkins 中显示 SCCT 覆盖率的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins SonarQube 插件多模块代码覆盖率不显示

声纳不显示代码覆盖率

SonarQube 没有获得单元测试覆盖率

sonar+Jenkins代码覆盖率检测

Jenkins中用jacoco统计gradle项目的代码覆盖率

多个 Maven 模块声纳代码覆盖率在 sonarqube 中显示为零