如何修饰类的不可测代码覆盖?(How to decorate a class as untestab

2019-08-31 07:13发布

背景:Visual Studio 2008中,C#,NET 3.5的。

我有一个数字,根本就没有单位可测试的工具类。 这主要是因为他们的资源(如数据库,文件等)进行交互。

有没有一种方法,我可以装饰这些类,以便在Visual Studio代码覆盖率引擎会忽略它们,所以不降低的代码覆盖率?

Answer 1:

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

更新按照大卫的评论:

作为.NET 4.0存在用于此专用属性: [ExcludeFromCodeCoverage]



Answer 2:

当您将项目升级到.NET 4,你会得到ExcludeFromCodeCoverageAttribute类 。



Answer 3:

一个你想要编写单元测试的原因是为了让你的代码松耦合。 你可以阅读这篇文章 ,如果你有兴趣学习如何编写松耦合代码(如果你不知道如何)。

说,你可以尝试使用类似工具TypeMock ,可以帮助你嘲笑你的对象,即使你不使用它们写依赖注入的原则 。

TypeMock是我使用的第一个模拟框架。 我切换到犀牛制品因为TypeMock我没有被管教足够写松耦合代码。



文章来源: How to decorate a class as untestable for Code Coverage?