Visual Studio 2012 - 代码覆盖 - 如何正确执行?

时间:2012-10-18 13:03:46

标签: c# .net

我正在尝试使用单元测试自动化代码覆盖率。我所做的是:

  1. 创建了具有一些功能的Metro应用程序。

  2. 创建单元测试库(适用于Metro应用程序) - 与我的应用程序(上图)相同的解决方案。

  3. 添加了一个包含少量测试方法的测试类。

  4. 为了能够编译测试库,我添加了在我的应用程序中创建的类的链接(Add-> Existing item-> Add as link“。

  5. 在VS下成功完成测试 -

  6. 使用vstest.console.exe从控制台进行测试 - 成功。

  7. 现在我必须为我的应用程序计算代码覆盖率。我知道vstest.console.exe有一个启用代码覆盖的选项,但我使用VS的Express版本,那个功能似乎不可用。

    问题是: 如何使用vstest.console.exe(或任何其他工具)来获得正确的代码覆盖率。该工具采用测试库项目的appx,因此它计算了库中代码的覆盖范围(从应用程序中提到单个类),对吧? tu如何使用该工具将带有测试代码和应用程​​序的库与所有代码一起使用?

2 个答案:

答案 0 :(得分:4)

Visual Studio 2012的高级版和终极版的代码覆盖率

但请注意,我们尚未在VS 2012中启用Windows应用商店应用的代码覆盖率。

答案 1 :(得分:3)

我们使用工具OpenCover来执行代码覆盖。这将输出结果的xml覆盖率报告。然后,我们将该xml文件传递给ReportGenerator,以创建一个样式很好的html报告。