OpenCover:可以将多个报告合并为一个吗?

时间:2014-04-15 16:37:44

标签: c# code-coverage sonarqube opencover

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

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

此时我的选择是

  1. 手动滚动OpenCover报告合并(blech!)
  2. 连续运行我的功能测试,大大增加了故障反馈时间
  3. 我缺少其他任何选项?

3 个答案:

答案 0 :(得分:5)

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

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

答案 1 :(得分:1)

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

您可以将所有XML报告提供为" *。XML"和报告生成器将从中生成一个合并报告。

答案 2 :(得分:0)

OpenCover具有-mergeoutput参数,可使其以仅附加的方式与-output文件一起使用,并保留在那里找到的先前度量。只要您的SUT仍然相同,就应该允许您分别调用各个测试运行。

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

相关问题