我在让 OpenCover 工作时遇到了一些问题
我有以下文件夹结构
- \工具
- \工具\Nunit
- \工具\OpenCover
- \构建工件
当我的代码编译时,所有编译后的代码都会生成到 BuildArtifacts 文件夹中。这包括 dll 和相应的 .pdb 文件
我正在努力让 OpenCover 运行
从 powershell 我从根文件夹输入以下命令:
.\tools\OpenCover\OpenCover.Console.exe -register:user -target:.\tools\nunit\nunit-console.exe -targetargs:".\buildartifacts\MVCControllerTests.dll /noshadow" -filter:+[*] * -输出:.\coverage.xml
但是我不断收到消息:提交...
无结果 - 未检测与提供的过滤器匹配的程序集这可能是由于缺少与过滤器匹配的程序集的 PDB 请查看输出文件并参考使用指南 (Usage.rtf)
我查看了OpenCover/NUnit can't find PDB files,并且我的 targetargs 中有 /noshadow 开关
我试图将 /noshadow 移动为 targetargs 中的第一个,但随后我从 nunit 收到错误
我还更新了 nunit-console.exe.config 并将以下行添加到启动节点,以确保所有测试都在 .net4 而不是 .net3.5 中执行
<supportedRuntime version="v4.0.30319">
但这并没有什么不同。
当我查看 coverage.xml 文件时,即使我有 noshadow 标志,nunit 似乎仍然在执行 shadowcopy
例如,这是存在的:
C:\Users\darren\AppData\Local\Temp\nunit20\ShadowCopyCache\10344_634940293912865718\Tests_275832668\assembly\dl3\db34ecee\a0f236ee_a7f4cd01\TABusinessInterface.DLL
感谢任何帮助。