打开封面不会在封面细节上生成输出

时间:2011-07-24 07:52:40

标签: code-coverage opencover

尝试按以下方式运行打开的封面

  

opencover.console.exe -target:" C:\ Users \ rkapiset \ Downloads \ xunit-1.8 \ xunit.console.clr4.x86.exe" -targetargs:""" E:\ Office \ CRM \ dotnet \ 1 - UI \ EYC.CRM.UI.Tests \ bin \ Debug \ EYC.CRM.UI.Tests.dll&# 34;"" -filter:+ [EYC] * -output:coverage.xml

下面是结果

  总共61次,3次失败,0次跳过,耗时1.674秒   访问类别0 of 0(NaN)
  访问方法0 of 0(NaN)
  访问点0 of 0(NaN)
  未访问的班级
  未访问的方法

任何暗示我出错的提示? 提前谢谢。

3 个答案:

答案 0 :(得分:7)

要实现这一目标,有几个关键。

  1. 找到封面
  2. 告诉它使用xunit.console.exe
  3. 使用targetargs
  4. 为xunit.console.exe提供参数
  5. 为xunit提供test dll和application dll的调试版本
  6. 指示xunit不使用shadowcopy(因此所有PDB调试文件都在其工作目录中可用)
  7. 使用反斜杠
  8. 在targetargs中的路径中引用注释
  9. 从coverage
  10. 中筛选出“.Tests”项目中的类
  11. 使用-register做一些神奇的事情
  12. 以管理员身份运行(如果您的计算机上已关闭UAC,则不会出现问题)
  13. 示例:

    "C:\OpenCover.4.6.166\tools\OpenCover.Console.exe" -output:"C:\MyProject\coverage.xml" "-target:C:\MyProject\packages\xunit.runner.console.2.0.0\tools\xunit.console.exe" -targetargs:"\"C:\MyProject\Project.Tests\bin\Debug\Project.Tests.dll\" \"C:\MyProject\Project\bin\Debug\Project.exe\" -noshadow" -filter:"+[*]Project.* -[*.Tests]*" -register
    

    引用: http://derekwilson.net/derekblog/post/2012/05/29/Using-OpenCover-and-xUnit.aspx

答案 1 :(得分:3)

您是否注册过探查器?

尝试 -register 开关,或者如果在UAC下 -register:user

所有开关都在OpenCover Wiki

上说明

另外,您可以在已安装的程序文件文件夹中的x86和x64文件夹中的每个分析器OpenCover.Profiler.dll上使用regsvr32

答案 2 :(得分:0)

尝试在代码中添加-register:user。 如果失败,那么您必须缺少Microsoft Visual C++ 2010 Redistributable Package (x86).。 这解释为here

相关问题