NCover 1.5.8 / NCoverExplorer 1.4.0.7手动排除非常不稳定

时间:2010-06-29 13:41:14

标签: code-coverage ncover ncover-explorer

我还没有安装NCover 3的许可证,我的构建服务器上仍然运行1.5.8。我试图排除我不希望包含在报告中的完整程序集和特定类,因为它们会人为地降低覆盖率结果。

在NCoverExplorer中,我正在玩这些选项,因为“选项”选项卡中有一个覆盖排除部分,您可以在其中指定完整的命名空间。我已进入完全合格的班级,由于某种原因,只有少数几个被排除在外,我无法弄清楚原因。例如,当我将System.ComponentModel.Composition添加到列表中时,它永远不会被排除!

这只是1.5.8中我现在必须忍受的错误,因为它是测试版,也不再受支持了吗?虽然我有一个新的服务器许可证,但我希望能够在家里的个人计算机上做一些报道。

我找到了一个非常棒的article on using a CoverageExcludeAttribute来让NCover自动跳过那些用这个属性标记的类/方法。这是最好的选择吗?

2 个答案:

答案 0 :(得分:1)

您是否尝试使用正则表达式来包含/排除程序集 -

//ias AuctionSniper([.\w]*?)(?<!Tests) 包括以AuctionSniper开头但不以测试结束的所有程序集,例如AuctionSniper.Main.exe 您可以指定由分号分隔的多个模式 或//ias .*vendorsupplied.*;.*tests

这适用于NCover 3 - 如果它适用于免费/社区版,您可以尝试一下。

答案 1 :(得分:0)

获得部分方式的一种方法是使用“程序集包含在覆盖范围内”选项。这允许我忽略System.ComponentModel.Composition。但是,驱散大多数其他类和命名空间仍然无法正常工作。有点奇怪,当我排除整个类时,它只排除方法,但不排除任何包含的类。

相关问题