1

我创建了一个名为“CoverageExcludeAttribute”的自定义属性,并将其放在我想从代码覆盖率分析中排除的类之上。但排除不起作用。覆盖率报告显示测试 dll 的覆盖率以及所有引用的程序集(包括包含排除属性的类)

<UsingTask TaskName="NCoverExplorer.MSBuildTasks.NCover" AssemblyFile="$(Libraries)\NCoverExplorer.MSBuildTasks.dll"/>
<Target Name="NcoverCoverage">
   <NCover ToolPath="C:\Program Files\TestDriven.NET 3\NCover\1.5.8"
        CommandLineExe="D:\Xunit\xunit.console.exe"
        CommandLineArgs="MyTestDll"
        WorkingDirectory="MyWorkingDirectory"
        excludeAttributes="CoverageExcludeAttribute" 
    LogFile="coverage.log"
   />
</Target>

我错过了什么吗?

谢谢。

4

2 回答 2

0

如果您使用的是 .NET Framework 4.0,则可以使用现有属性

ExcludeFromCodeCoverageAttribute

从命名空间:

System.Diagnostic.CodeAnalysis

至少在使用 NCoverExplorer 时,在使用 NCover 1.5.8 时,这对我来说似乎工作正常。该属性是自动拾取的。

于 2013-01-16T02:18:41.243 回答
0

确保您的属性在全局命名空间中定义或在excludeAttributes.

于 2012-03-06T10:44:50.690 回答