【发布时间】:2012-11-16 14:39:10
【问题描述】:
我正在使用具有使用 OpenCover 的 Gallio 的声纳,尽管有测试类并且我的机器尝试运行测试大约需要 15 秒(至少看起来是这样),但它给了我 0% 的代码覆盖率,之后用0 run, 0 passed, 0 failed, 0 inconclusive, 0 skipped 行总结它们。
所以,我浏览了互联网/stackoverflow,发现这可能与在另一台机器上编译的代码有关。就像这里的情况一样,我在 Visual Studio 中打开了解决方案,构建了它,我可以看到我的 PDB 文件被重新创建。之后,我再次尝试使用 opencover 声纳。
它没有帮助
我从管理控制台中取出调用 OpenCover 的代码行,进入 OpenCover 目录并执行同一行,没有过滤器,因为我的 coverage-report.xml 告诉我测试模块是 @987654322 @。之后他们不再被跳过。 尽管如此,0% 的测试覆盖率
我在同一个管理控制台中使用regsvr32 OpenCover.Profiler.dll 注册了 OpenCover 分析器库(并尝试了两次,因为我在 Windows 7 上但使用的是 32 位声纳)。
没有帮助
我尝试了添加 -oldStyle 参数的同一行 也没有用
现在我觉得我别无选择......
我在管理控制台中尝试的最新调用:
C:\Program Files\OpenCover>OpenCover.Console.exe -register:user -target:"C:\Program Files\Gallio\bin\Gallio.Echo.exe" -targetdir:D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\.sonar "-targetargs:\"/r:IsolatedAppDomain\" \"/report-directory:D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\.sonar\" \"/report-name-format:gallio-report\" \"/report-type:Xml\" \"D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\CDPBackoffice.BusinessLogic.Tests\bin\Debug\CDPBackoffice.BusinessLogic.Tests.dll\" \"D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\CDPBackoffice.Utility.Tests\bin\Debug\CDPBackoffice.Utility.Tests.dll\" \"D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\CDPBackoffice.DataAccessLayer.Tests\bin\Debug\CDPBackoffice.DataAccessLayer.Tests.dll\"" -mergebyhash -output:D:\projecten\udbdrm\source\CDP\CDPBackoffice\Develop\CDPBackoffice.root\CDPBackoffice\.sonar\coverage-report.xml -oldStyle
该解决方案确实有几个测试类,它们在 Visual Studio 中执行时运行,它们确实调用源类。有些失败有些成功。
还有人知道如何获得测试结果吗? 最好在声纳中,但是嘿,因为使用上面的调用执行 OpenCover 会将结果放在 coverage-report.xml 中,而声纳将其用作输入,我对工作调用很好......
【问题讨论】:
标签: sonarqube gallio opencover