我正在使用SonarQube和Jenkins。在Jenkins,我用nUnit检查单元测试,用opencover检查覆盖率。 opencover的报告显示在Sonar中,但是nunit的报告却没有。单元测试计数甚至没有显示在项目的主页中。
以下是我的工作:
第2步的命令行:
MKDIR "%WORKSPACE%\reports"
MKDIR "%WORKSPACE%\reports-history"
SET COV_PTH="D:\Programmes\opencover.4.5.3522"
SET TOOL_PATH="D:\Programmes\NUnit-2.6.4"
SET RPT_PATH="D:\Programmes\ReportGenerator"
copy src\Foo.Bar.Tests\app.config build\Foo.Bar.Tests.dll.config
%COV_PTH%\OpenCover.Console.exe "-filter:+[Foo.Bar*]* -[Foo.Bar.Tests]* -[Foo.Bar.Service]* -[Foo.Bar.Domain]* -[Foo.Bar.Dal]Foo.Bar.Dal.Dao.* -[Foo.Bar.Controller]Foo.Bar.Controller.*Comparer -[Foo.Bar.Controller]Foo.Bar.Controller.External.*" -register "-target:%TOOL_PATH%\bin\nunit-console.exe" -targetargs:"build\Foo.Bar.Tests.dll /noshadow /result=reports\TestResult.xml" -output:reports\opencovertests.xml
%RPT_PATH%\ReportGenerator.exe "-reports:reports\opencovertests.xml" "-targetdir:reports-ReportGenerator" "-historydir:reports-history"
第3步的参数:
sonar.projectKey=FooBar
sonar.projectName=FooBar
sonar.projectVersion=%SVN_REVISION%
sonar.sources=src/Foo.Bar.Controller, src/Foo.Bar.Dal, src/Foo.Bar.Domain, src/Foo.Bar.Fichier, src/Foo.Bar.Generation, src/Foo.Bar.Reporting, src/Foo.Bar.Service, src/Foo.Bar.Web
sonar.binaries=Build/Foo.Bar.Controller.dll, Build/Foo.Bar.Dal.dll, Build/Foo.Bar.Domain.dll, Build/Foo.Bar.Service.dll, Build/Foo.Bar.Fichier.exe, Build/Foo.Bar.Generation.exe, Build/Foo.Bar.Reporting.exe
sonar.tests=src/Foo.Bar.Tests
sonar.cs.opencover.reportsPaths=reports/opencovertests.xml
sonar.cs.nunit.reportsPaths=reports/TestResult.xml
修改
我也尝试了以下过程(结果相同):
结束编辑
nUnit的报告在workspace / reports / TestResult.xml中生成。
我通过命令行和jenkins的sonarqube插件测试了分析生成。我得到了相同的结果。
你能看到什么问题吗?
我可以查看SonarQube的日志吗?
我正在使用Jenkins 2.10,MSBuild 12,SonarQube 5.6,SonarsQube扫描仪用于Jenkins插件2.4.3,opencover 4.5和nunit 2.6.4
修改
我更新了我的配置:Jenkins 2.18,MSBuild 14,用于Jenkins插件2.4.4的SonarQube扫描程序。相同的结果。
结束编辑
答案 0 :(得分:2)
看看:SonarQube documentation: Unit Test Execution Results Import (C#, VB.NET)
它说:
不支持向下钻取测试执行结果
我的理解是你只能看到结果(测试通过次数,错误等),但不能看到测试中的详细信息。
您还会询问有关日志的信息。你有: