OpenCover- Opencover 在 tfs 构建定义中使用 vstest.console.ex 时说缺少 PDB
OpenCover- Open cover saying missing PDBs when working with vstest.console.ex in tfs build definiton
我正在尝试将 Opencover 与 TFS2013 集成以实现自定义代码覆盖率。我正在通过构建定义传递 运行 Open Cover 所需的参数,并在构建过程模板中使用 InvokeProcess activity 调用 OC。
我正在关注中提到的收益
this blog , here and here。
传递的最终 OpenCover 参数是
OpenCover.Console.exe -register:user -target:"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" -targetargs:"<build_definition_folder>\bin\NUnitTestDemo.dll <build_definition_folder>\bin\UnitTest.dll /Platform:X86 /Framework:Framework45 /Logger:trx " -targetdir:"<build_definition_folder>\bin" -mergebyhash -output:"<build_definition_folder>\bin\results.xml"
输出结果为
测试总数:2。通过:2。失败:0。跳过:0。
测试运行成功。
测试执行时间:0.6657 秒
正在提交...
没有结果,这可能是出于多种原因。最常见的原因是:
1) 缺少与筛选器匹配的程序集的 PDB,请查看
输出文件并参考有关过滤器的使用指南(Usage.rtf)。
2)profiler可能没有注册正确,请参考Usage
指南和 -register 开关。
请帮助我。 PDB 仅存在于同一个 bin 文件夹中。我尝试 运行 在我的机器上使用 Open Cover UI 在本地打开封面,结果很好。但是对于控制台应用程序,它在构建服务器中没有像我预期的那样工作。
我以前遇到过这个问题,这是因为我的构建服务是 运行 "Network Service" 帐户。我用管理员账号改成运行后,运行正常,结果生成成功。
我的修复:
停止构建服务并将 "Properties" 中的设置更改为 运行 作为管理员帐户的服务。然后启动构建服务并排队新构建。
我正在尝试将 Opencover 与 TFS2013 集成以实现自定义代码覆盖率。我正在通过构建定义传递 运行 Open Cover 所需的参数,并在构建过程模板中使用 InvokeProcess activity 调用 OC。
我正在关注中提到的收益 this blog , here and here。
传递的最终 OpenCover 参数是
OpenCover.Console.exe -register:user -target:"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" -targetargs:"<build_definition_folder>\bin\NUnitTestDemo.dll <build_definition_folder>\bin\UnitTest.dll /Platform:X86 /Framework:Framework45 /Logger:trx " -targetdir:"<build_definition_folder>\bin" -mergebyhash -output:"<build_definition_folder>\bin\results.xml"
输出结果为
测试总数:2。通过:2。失败:0。跳过:0。
测试运行成功。
测试执行时间:0.6657 秒
正在提交...
没有结果,这可能是出于多种原因。最常见的原因是:
1) 缺少与筛选器匹配的程序集的 PDB,请查看 输出文件并参考有关过滤器的使用指南(Usage.rtf)。 2)profiler可能没有注册正确,请参考Usage 指南和 -register 开关。
请帮助我。 PDB 仅存在于同一个 bin 文件夹中。我尝试 运行 在我的机器上使用 Open Cover UI 在本地打开封面,结果很好。但是对于控制台应用程序,它在构建服务器中没有像我预期的那样工作。
我以前遇到过这个问题,这是因为我的构建服务是 运行 "Network Service" 帐户。我用管理员账号改成运行后,运行正常,结果生成成功。
我的修复:
停止构建服务并将 "Properties" 中的设置更改为 运行 作为管理员帐户的服务。然后启动构建服务并排队新构建。