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

时间:2016-01-27 10:54:22

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

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

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

我分别使用Xunit和Moq进行测试和嘲笑。

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

1 个答案:

答案 0 :(得分:0)

我们最近在TFS 2015服务器上实现了类似的用例。它稍微粗略一点,因为我们没有测量我们刚刚测试的特定命名空间的覆盖范围,以确保覆盖范围不会降低。对我们而言,这可确保如果开发人员添加任何代码,则必须覆盖该代码,否则整体度量标准会降低。

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