我在让OpenCover工作时遇到了一些麻烦
文件夹结构如下
- <
- 工具/gh>
- 工具 Nunit
- 工具 OpenCover
- Buildartifacts
当我的代码编译时,所有编译后的代码都会生成到BuildArtifacts文件夹中。这包括dll和相应的.pdb文件
我正在努力让OpenCover运行
从powershell中,我从根目录输入以下命令:
。工具 OpenCover OpenCover.Console.exe注册:用户-target:.toolsnunitnunit-console.exe -targetargs:". buildarfacts MVCControllerTests.dll/noshadow" -filter:+[*]* -output:.coverage.xml
然而,我不断得到的消息:犯…
没有结果-没有与提供的筛选器匹配的程序集检测这可能是由于缺少与过滤器匹配的组件的pdb请查看输出文件并参考使用指南(Usage.rtf)
我已经看过OpenCover/NUnit不能't找到PDB文件,我有/noshadow开关存在于我的targetargs
我试图将/noshadow移动到targetargs中的第一个,但随后我从nunit
得到错误我也更新了unit-console.exe。配置并在启动节点中添加以下行,以确保在.net4而不是.net3.5中执行所有测试
& lt; supportedRuntime version = " v4.0.30319"在
但这并没有什么区别。
当我查看cover .xml文件时,即使我有noshadow标志,它仍然显示nunit正在进行shadowcopy
例如,这是存在的:
C: 达伦 AppData 本地用户 Temp nunit20 ShadowCopyCache 10344 _634940293912865718 Tests_275832668 会议 dl3 db34ecee a0f236ee_a7f4cd01 TABusinessInterface.DLL
感谢您的帮助。
OpenCover WIKI指出,当使用PowerShell时,你应该把整个参数用引号括起来,即
-targetargs:".buildartifactsMVCControllerTests.dll /noshadow"
是
"-targetargs:.buildartifactsMVCControllerTests.dll /noshadow"