c# - 如何对代码覆盖率进行单元测试?

标签 c# asp.net-mvc unit-testing moq xunit.net

我的团队正在创建一个 ASP.NET MVC 应用程序。我们正在使用脚手架来帮助我们创建我们的实体。脚手架将创建模型、存储库、 Controller 和我们拥有的其他一些类。它还为实体搭建了一个基本的测试套件。目前正在测试所有脚手架代码。

我想要的是,如果某个类的代码覆盖率低于某个值,则单元测试会失败。例如,Controller 和 Repository 需要尽可能接近 100% 的覆盖率。这些类也将得到进一步开发,我想要进行检查以确保添加到它们的代码正在接受测试。

我分别使用 Xunit 和 Moq 进行测试和模拟。

如何实现代码覆盖率测试?

最佳答案

我们最近在我们的 TFS 2015 服务器上实现了一个类似的用例。它有点粗糙,因为我们没有测量特定命名空间的覆盖率,我们只是测试以确保覆盖率不会整体下降。对我们来说,这确保了如果开发人员添加任何代码,它必须被覆盖,否则整体指标会下降。

我们的 ALM 小组编写了一个 PowerShell 脚本来从 TFS 读取覆盖率数字,并将当前构建的覆盖率与以前的构建进行比较。如果它较低,则构建失败。他们将脚本添加到测试后脚本路径以在构建期间运行它。

关于c# - 如何对代码覆盖率进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35035340/

相关文章:

ios - 在 iOS 单元测试中模拟 NSHTTPURLRequest 和 NSHTTPURLResponse

c# - 使用生成的数据阅读器对 Gridview 进行排序和分页

c# - Visual Studio 2017 SmartDeviceException DEP6200 错误

c# - 从长字符串(300 万个字符)中读取大量(100 万)子字符串(100 个字符宽)

c# - ASP.NET MVC2 从 jQuery 调用 AsyncController 方法?

asp.net-mvc - 如何进入system.web.mvc

asp.net-mvc - 当 Entity Framework 在单独的库中时模型上的部分类

asp.net - MVC3 - 所有路由都在本地工作,但不能远程工作

multithreading - 运行多线程 nunit 测试的最佳方式

java - 如何在单元测试中设置固定的 hashCode-Value