代码质量方面的检测工具,在这之前从来没用过,就算前阵子听说了sonarcloud,也仅当知道记录了下,结果昨天被某些事情刺激了下,于是去查了下资料,然后就顺便在github上做了下测试,这里做个记录。
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
Log in
With GitHub
Travis CI
GitHub Actions
SONAR_TOKEN
.NET
JDK
dotnet tool
Actions
<insert_your_clean_build_command>
dotnet build
runs-on: windows-2019
dotnet
Action
在最终脚本通过之后,就可以在sonarcloud上看到具体的代码质量信息 这个界面上只能看问题的汇总信息,这些图标是无法点击跳转的,需要点击进项目之后,点击Main Branch之后,相应的数字才能够点击跳转
Main Branch
接下来就是有Bug修Bug,Code Smells就类似于VS里的warning信息,可看情况进行修复,不过实际会发现有些检测结果代码是正确的,但sonarcloud提示有误,这时候你可以在相应的问题上调整相应的解决标志 我试验项目检测出来的5个Bug,看下来居然没一个是Bug,只是单元测试这块,因为我项目根本没写,所以覆盖率Coverage是0……
Bug
Code Smells
warning
Coverage
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