设置如下:
Ubuntu 16.04上的Jenkins 2.89.2
SonarQube版本6.7(构建33306)在Ubuntu 16.04上(单独的服务器)
node {
sh 'mono ~/tools/hudson.plugins.sonar.MsBuildSQRunnerInstallation/MSBuild/SonarQube.Scanner.MSBuild.exe begin /key:12345678FAKEKEY9l02998745'
sh 'dotnet restore WSP1.sln'
sh 'dotnet msbuild WSP1.sln'
sh 'mono ~/tools/hudson.plugins.sonar.MsBuildSQRunnerInstallation/MSBuild/SonarQube.Scanner.MSBuild.exe end' } }
当我运行这个管道时,我可以看到正在分析C#代码,这只是正在分析的代码片段:
Services/Project1/Services/Project1EventsShould.cs(130,21): warning S1186: Add a nested comment explaining why this method is empty, throw a 'NotSupportedException' or complete the implementation. [/var/lib/jenkins/workspace/CSharpAnalysis/WSP1/test/Unit/Unit.csproj]
Services/Project1/Services/Project1EventsShould.cs(137,21): warning S1186: Add a nested comment explaining why this method is empty, throw a 'NotSupportedException' or complete the implementation. [/var/lib/jenkins/workspace/CSharpAnalysis/WSP1/test/Unit/Unit.csproj]
Services/Project1/Models/ZenEventShould.cs(24,17): warning S1481: Remove this unused 'date' local variable. [/var/lib/jenkins/workspace/CSharpAnalysis/WSP1/test/Unit/Unit.csproj]
Services/Project1/Models/CollaborationUserShould.cs(16,17): warning S1481: Remove this unused 'sut' local variable. [/var/lib/jenkins/workspace/CSharpAnalysis/WSP1/test/Unit/Unit.csproj]
最后我成功了,一切看起来都很好,但当我检查SonarQube时,我可以看到上传的代码正在被分析以在SonarQube中显示,这通常需要一分钟左右,但当这完成时,我可以看到只显示打字脚本和XML。
在输出中,我会得到一些警告、信息和错误,但没有什么是危险的,在输出结束时,我会得到成功消息
INFO: 68 files had no CPD blocks
INFO: Calculating CPD for 281 files
INFO: CPD calculation finished
INFO: Analysis report generated in 1771ms, dir size=5 MB
INFO: Analysis reports compressed in 3908ms, zip size=2 MB
INFO: Analysis report uploaded in 5866ms
INFO: ANALYSIS SUCCESSFUL, you can browse http://sonar.serverdomain.com:9000/dashboard/index/12345678FAKEKEY9l02998745
INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report
INFO: More about the report processing at http://sonar.serverdomain.com:9000/api/ce/task?id=AKsdHc7FAKEIDVOeCzBYv
INFO: Task total time: 1:32.107 s
INFO: ------------------------------------------------------------------------
INFO: EXECUTION SUCCESS
INFO: ------------------------------------------------------------------------
INFO: Total time: 1:42.735s
INFO: Final Memory: 54M/397M
INFO: ------------------------------------------------------------------------
The SonarQube Scanner has finished
14:59:57.577 Creating a summary markdown file...
14:59:57.59 Analysis results: http://sonar.serverdomain.com:9000/dashboard/index/12345678FAKEKEY9l02998745
14:59:57.591 Post-processing succeeded.
Finished: SUCCESS
编辑:我再次挖掘输出,注意到以下2个警告:
INFO: Quality profile for cs: Sonar way
INFO: Quality profile for ts: Sonar way
INFO: Quality profile for xml: Sonar way
INFO: Sensor C# Properties [csharp]
WARNING: WARN: Property missing: 'sonar.cs.analyzer.projectOutPaths'. No protobuf files will be loaded for this project.
WARNING: WARN: No roslyn issues report not found for this project.
INFO: Sensor C# Properties [csharp] (done) | time=1ms
我刚刚在Sonarqube 6.7.4(构建38452)上遇到了同样的问题。
通过两个步骤解决:
path/to/coverage.OpenCover.xml
。重新扫描后,显示测试覆盖率数据。 dotnet path/to/SonarScanner.MSBuild.dll begin /k:"project-key"
dotnet build
dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=opencover
dotnet path/to/SonarScanner.MSBuild.dll end
我将sonarqube jacoco用于codecoverage,我有一个junit测试用例用于我的java代码,它采用的是下面的目录结构。 我希望在sonarqube仪表板上有一个代码覆盖率,我也在使用gradle。 我正在运行gradle sonarqube 我不知道我哪里做错了?如果有任何一个可以帮助从java代码中获得测试用例的覆盖面。
你可以在整个屏幕上显示仪表板。在此模式下,标题栏、工具栏、选项卡栏、页面窗格、控件列表和属性窗格将被隐藏。若要以显示视图打开仪表板,请点击 “显示”。 如果你在仪表板上添加了控件图表,则可以使用控件筛选所有图表的数据系列。 若要退出显示视图,请按 ESC 键,工作区窗口将返回其先前状态。
你可以在整个屏幕上显示仪表板。在此模式下,标题栏、工具栏、选项卡栏、页面窗格、控件列表和属性窗格将被隐藏。若要以显示视图打开仪表板,请点击 。 如果你在仪表板上添加了控件图表,则可以使用控件筛选所有图表的数据系列。 若要退出显示视图,请按 ESC 键,工作区窗口将返回其先前状态。
你可以在整个屏幕上显示仪表板。在此模式下,标题栏、工具栏、选项卡栏、页面窗格、控件列表和属性窗格将被隐藏。若要以显示视图打开仪表板,请点击 “显示”。 如果你在仪表板上添加了控件图表,则可以使用控件筛选所有图表的数据系列。 若要退出显示视图,请按 ESC 键,工作区窗口将返回其先前状态。
环境:Windows 7 | sonar cube 4.4 | sonar runner 2.4 |。NET (C#) | Visual Studio专业版2013 我一直在使用声纳3.2 同样的配置,当我升级到SonarQube 4.4时 声纳项目属性: 我知道我们需要通过一个批处理文件获得覆盖率XML文件,使用它我们可以在SonarQube Dashboard中看到覆盖率结果。 我无法获得通过
try1:直接使用以下命令尝试: 试图使用url http://172.20.22.101:8001/api/v1访问仪表板,但它表示未经授权。 try2:创建了包含以下内容的dashboard-admin.yaml文件: