【问题标题】:OpenCover: possible to merge multiple reports into one?OpenCover:可以将多个报告合并为一个吗?
【发布时间】:2014-05-30 03:45:06
【问题描述】:

我正在使用 OpenCover 为 Web 应用程序生成功能测试覆盖率。这些测试运行时间相当长(超过 3 小时),因此我们将它们分成多个并行运行的测试。因此,不是一份覆盖率报告,而是六份。

为了将这些覆盖率报告导入 SonarQube,我需要想办法将它们组合成一个 uber 报告。 ReportGenerator 支持将多个报告合并为一个,但会创建 HTML 输出,这不是 SonarQube 可以使用的。

此时我的选择是

  1. 手动合并 OpenCover 报告(废话!)
  2. 连续运行我的功能测试,大大增加了故障反馈时间

我还缺少其他选项吗?

【问题讨论】:

标签: c# code-coverage sonarqube opencover


【解决方案1】:

OpenCover 具有-mergeoutput 参数,使其能够以仅追加的方式与-output 文件一起使用,并保留以前在那里找到的测量值。这应该允许您单独调用单独的测试运行——只要您的 SUT 仍然相同。

我尝试使用不同的-filter 参数运行测试的经验是,OpenCover 拒绝重新打开在之前的测试运行中被过滤掉的模块。不过,我认为值得一试。

【讨论】:

    【解决方案2】:

    较新版本的报告生成器支持通配符。

    您可以将所有 XML 报告提供为“*.XML”,并且报告生成器会从中生成一份合并报告。

    【讨论】:

    • 我认为这不能解决 OP 的要求。他们提到 SonarQube 无法使用 Report Generator 创建的内容
    【解决方案3】:

    我在 SonarQube .NET 端创建了以下票证,以允许指定多个覆盖率报告并将它们聚合:http://jira.codehaus.org/browse/SONARPLUGINS-3666

    但与此同时,除了您已经拥有的 2 个之外,我想不出其他选择。

    【讨论】:

      猜你喜欢
      • 2010-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-03
      • 2023-03-05
      • 1970-01-01
      相关资源
      最近更新 更多