.Net项目github接入sonarcloud
Posted 娃都会打酱油了
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net项目github接入sonarcloud相关的知识,希望对你有一定的参考价值。
代码质量方面的检测工具,在这之前从来没用过,就算前阵子听说了sonarcloud
,也仅当知道记录了下,结果昨天被某些事情刺激了下,于是去查了下资料,然后就顺便在github
上做了下测试,这里做个记录。
sonarcloud
的官网地址是https://sonarcloud.io,打开后点击Log in
,在打开的界面中选择With GitHub
进行登录
授权后,按界面一路点击下去,在导入完账号组织信息后,就可以选择你要对哪些项目做QA,如果不花钱只能选择开源项目,选完后就会出来配置以下界面
然后你就可以点击一个项目进行相应的配置,因为Travis CI
没玩过,所以这里还是选GitHub Actions
然后就是按步骤一步步做下去
先是在github
对应项目上配置SONAR_TOKEN
然后再第二步中选择.NET
选项
刚开始看到安装JDK
还楞了下,后来仔细看了下完整的脚本指令,发现有个dotnet tool
指令,确认应该是没搞错,接下来就是到github
上去配置Actions
在打开的界面调整下文件名,然后再将sonarcloud
上的脚本指令完整的复制过来,注意<insert_your_clean_build_command>
这段是要调整为实际的执行脚本,在这里就是dotnet build
,中间也算是弄了一点小插曲,一开始是报了虚拟服务器latest的windows版本是2022,按相应的描述链接,调整了runs-on: windows-2019
,然后因为我项目的sln文件不在项目的根目录下,所以dotnet
相关的指令还需要指定sln文件地址,具体的dotnet
指令可以看这里,默认是每次提交都会执行Action
在最终脚本通过之后,就可以在sonarcloud
上看到具体的代码质量信息
这个界面上只能看问题的汇总信息,这些图标是无法点击跳转的,需要点击进项目之后,点击Main Branch
之后,相应的数字才能够点击跳转
接下来就是有Bug
修Bug
,Code Smells
就类似于VS里的warning
信息,可看情况进行修复,不过实际会发现有些检测结果代码是正确的,但sonarcloud
提示有误,这时候你可以在相应的问题上调整相应的解决标志
我试验项目检测出来的5个Bug
,看下来居然没一个是Bug
,只是单元测试这块,因为我项目根本没写,所以覆盖率Coverage
是0……
2022-03-11:Coverage
终于也补上了,不过是另一个项目
最后是链接地址汇总:
sonarcloud官网:https://sonarcloud.io
dotnet指令:https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-build
sonarQube配置:https://blog.csdn.net/qq_28911061/article/details/105618801
测试覆盖率:https://blog.51cto.com/u_15060508/4402217
以上是关于.Net项目github接入sonarcloud的主要内容,如果未能解决你的问题,请参考以下文章
未从 Azure Devops .NET 核心构建获得 SonarCloud 中的代码覆盖率
SonarCloud 代码覆盖率在 GitHub Actions 构建中保持为 0.0