c# - 在 Sonar 中获取代码覆盖率但没有测试结果 (.Net)

标签 c# .net unit-testing code-coverage sonarqube

我在我的 Sonar 配置中重新使用报告:

sonar.gallio.mode=reuseReport
sonar.gallio.reports.path=gallio-report.xml
sonar.gallio.coverage.reports.path=results.xml

我之前运行过 Gallio 和 OpenCover 并且可以确认两者都成功完成并且 Sonar 能够检索文件(我已经彻底检查了 -X 标志生成的日志)。当我在 Sonar 仪表板中查看项目时,我看到代码覆盖率,但看不到测试结果:

Code Coverage

请忽略低代码覆盖率,我正在运行一小部分测试来解决这个问题。

我应该看到一些反射(reflect)我在运行 Gallio 时看到的结果的东西:

14 run, 13 passed, 1 failed (1 error), 0 inconclusive, 0 skipped

如果有帮助,我很乐意包含 gallio-report.xml,但它有 103kb,显然包含大量数据,我认为这更有可能是配置问题。

我正在运行 OpenCover 4.0.1118 和 Gallio 3.2.750(测试是用 NUnit 编写的)。

为什么我看不到任何测试结果有什么想法吗?

最佳答案

很可能您的 .NET 解决方案中没有测试源,因此当 SonarQube 尝试导入测试执行结果时,它无法找到它们应该附加到哪些文件。

.NET sample solution ,您可以看到有一个测试项目 (Example.Core.Tests),其中包含测试类的源代码。

关于c# - 在 Sonar 中获取代码覆盖率但没有测试结果 (.Net),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18640406/

相关文章:

c# - 获取 azure 容器中的最后一个blobitem

c# - 无法转换为 LINQ to Entities 存储表达式

java - @Mock 注释下的对象是否应该调用其构造函数?

c# - Office 365 Api c# Windows 服务

c# - 如何转换为时间?

.net - 将 PascalCase 字符串拆分为单独的单词

c# - 使用 C# 压缩单个文件

java - Mockito 单元测试 RestTemplate

angularjs - 单元测试 this.$onDestroy in Angular >1.5/es6

c# - NOSQL数据库选型论坛