如何将类修饰为代码覆盖率不可测试?

Chr*_*old 20 c# unit-testing code-coverage visual-studio-2008

背景:Visual Studio 2008,C#,.Net 3.5.

我有许多实用程序类,它们不是单元可测试的.这主要是因为它们与资源(例如数据库,文件等)交互.

有没有办法可以装饰这些类,以便Visual Studio代码覆盖引擎会忽略它们,所以不减少代码覆盖百分比?

bri*_*ner 27

将项目升级到.NET 4时,您将获得ExcludeFromCodeCoverageAttribute类.


Joh*_*n K 17

倘若一个答案这篇文章有关如何使用[System.Diagnostics.DebuggerHidden][System.Diagnostics.DebuggerNonUserCode]属性,以排除代码覆盖率的方法.

根据David的评论更新:

从.NET 4.0开始,有一个专用属性:[ExcludeFromCodeCoverage]

  • 重要说明:从.NET 4.0开始,有一个专用属性:`[ExcludeFromCodeCoverage]` (3认同)
  • 注意事项(来自上面的文章) - "DebuggerHidden将阻止您进入该方法或在该代码中设置断点,DebuggerNonUserCode将隐藏代码作为(原文如此)调试时间并自动切换它." (2认同)