我在仅安装VS 2019的Windows 10桌面上本地运行OpenCover。
如果我单独运行"%PROGRAMFILES(X86)%\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" .\MyProj.Tests\bin\Debug\MyProj.Tests.dll
,则所有测试都将执行并通过。
但是如果我运行".\packages\OpenCover.4.7.922\tools\OpenCover.Console.exe" -register:user -target:"%PROGRAMFILES(X86)%\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" -targetargs:".\MyProj.Tests\bin\Debug\MyProj.Tests.dll" -mergebyhash -showunvisited -output:"code_coverage_report\codecoveragereport.xml"
,则会收到错误消息
测试运行成功。测试总数:81通过:81总时间:12.7709 提交秒数...无结果,这可能是因为 原因。最常见的原因是:1)缺少PDB 与过滤器匹配的程序集,请检查输出文件并 有关过滤器,请参阅使用指南(Usage.rtf)。 2)分析器 可能未正确注册,请参阅使用指南和 -register开关。
我检查了单元测试DLL的bin文件夹,看到MyProj.dll,MyProj.dll.pdb,MyProj.Tests.dll,MyProj.Tests.dll.pdb。我认为这里什么都没丢失。
codecoveragereport.xml文件中的所有内容都是系统或Visual Studio程序集。
有人知道吗?