在VS 2010旗舰版中启用代码覆盖率

7
这可能看起来有点愚蠢,但我找不到答案,所以:
我的团队刚刚转移到了VS2010 ultimate,并且我们想启用代码覆盖率。我找到的所有说明都提到要打开Local.testsettings文件并转到“执行条件”选项卡。
好吧,我没有这个选项卡,而我确实有VS2010 ultimate,它应该支持代码覆盖率。

请帮忙一下 :)

Noa

5个回答

12

测试设置对话框截图

不要忘记按钮“配置”!!!

  1. 选择 测试/编辑测试设置/你的活动设置/

  2. 选择选项卡 数据和诊断,

  3. 选择行 代码覆盖率

  4. 勾选 启用

  5. 单击网格顶部的小配置符号。

  6. 检查您想要从中收集代码覆盖信息的所有程序集...


1
我总是忘记点击这个按钮,然后想知道为什么我的构建没有生成代码覆盖率结果。我认为配置按钮的位置有些可疑;它应该更加突出。 - codechurn
我不确定,但2012版本中有些东西已经改变了 :) - alerya
1
如果你在使用VS 2012开发.NET4项目,同时又有一个TFS 2010,那么请注意——通过VS2012 GUI启用代码覆盖率会向你的.testsettings文件添加对Microsoft.VisualStudio.TestTools.CodeCoverage.CoveragePlugIn的Version = 11.0.0.0引用;对于Microsoft.VisualStudio.TraceCollector.TestImpactDataCollector也是一样。这意味着,除非你的构建服务器安装了VS2012,否则代码覆盖和测试影响分析将无法正常工作。要解决这个问题,只需手动编辑.testsettings文件并将11.0更改为10。 - codechurn

7

在您的解决方案资源管理器中应该有一个“解决方案项”文件夹。双击Local.testsettings文件。

会弹出一个新窗口。其中有一个列表可供选择,包括常规、角色等条目。

选择“数据和诊断”条目。在那里,您可以启用代码覆盖率。


我按照你的建议做了。但是无论如何都没有代码覆盖率 :( - alerya

2

总之:

在您的解决方案资源管理器中应该有一个名为Solution Items的文件夹,其中应包含Local.testsettings文件。 双击它,在打开的窗口中进入Data and Diagnostics,在那里启用Code Coverage。然后点击那里的Configure按钮并勾选您希望进行代码覆盖测试的程序集。应用您的设置,现在代码覆盖率应该可以工作了。

如果您没有Solution Items文件夹,或者没有Local.testsettings文件,您可以创建新的Test Project。这将创建Local.testsettings。如果不需要它,您可以删除新的测试项目。


1

以下是 VS 2010 Ultimate 的步骤:

  1. 双击 Local.Testsettings
  2. 点击 数据与诊断 选项卡
  3. 勾选 代码覆盖率
  4. 双击对应的代码覆盖行
  5. 选择需要检查代码覆盖率的 dll 文件
  6. 点击 应用并关闭

0
如果找不到本地的testsettings文件,您可以创建一个新的文件。
只需创建一个新的测试项目,然后将其删除--您应该会有一个“解决方案项”项目文件夹,其中包含Local.testsettings和TraceAndTestImpact.testsettings文件以及一个vsmdi文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接