美文网首页
SonarQube学习之SonarLint

SonarQube学习之SonarLint

作者: david161 | 来源:发表于2022-04-05 10:52 被阅读0次

在典型的开发过程中:

  1. 开发人员在 IDE 中开发和合并代码(最好使用SonarLint在编辑器中接收即时反馈)并将他们的代码签入到他们的 ALM。
  2. 组织的持续集成 (CI) 工具检查、构建和运行单元测试,集成的 SonarQube 扫描仪分析结果。
  3. 扫描器将结果发布到 SonarQube 服务器,该服务器通过 SonarQube 界面、电子邮件、IDE 内通知(通过 SonarLint)以及拉取或合并请求的装饰(使用Developer Edition及更高版本时)向开发人员提供反馈。
image.png

sonarlint官网

https://www.sonarlint.org/

idea插件官网

https://plugins.jetbrains.com/ 

sonarlint下载地址: 
https://plugins.jetbrains.com/plugin/7973-sonarlint

sonarlint的作用

Sonar可以从以下七个维度检测代码质量,而作为开发人员至少需要在本地开发环境处理前6种代码质量问题

  1. 不遵循代码标准: sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写
  2. 潜在的缺陷: sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的缺陷
  3. 糟糕的复杂度分布: 文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试
  4. 重复: 显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方
  5. 注释不足或者过多: 没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降 而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷
  6. 缺乏单元测试: sonar可以很方便地统计并展示单元测试覆盖率
  7. 糟糕的设计: 通过sonar可以找出循环,展示包与包、类与类之间相互依赖关系,可以检测自定义的架构规则 通过sonar可以管理第三方的jar包, 检测耦合。

安装sonarlint

我们当然可以通过官网去下载安装包,在线的方式去安装,更多的情况下,我们直接在

配置sonarlint

SonarLint General Settings :针对IDEA所有打开项目之后的SonarLint通用配置.
SonarLint Project Settings :针对当前这一个项目配置生效.
在setings里面搜索sonarqube


image.png

这里还可以配置不同语言的扫描规则:


image.png image.png

这里的token,我们可以在sonarqube上去配置,这里通过admin/admin登录后可以看到


image.png

可以某个具体的用户,这里是管理员,生成一个令牌,这里要注意先复制好这个令牌,他只显示一次,后面看不到了,没保存后面需要的话就只能重新再生成了。


image.png

当然,我们如果用令牌的话,也可以用用户名/密码的方式连接。

需要sonarqube生成token或者是用户名、密码方式配置 ,这里我们使用token方式,一个token的示例如下:
c15a6c7add097ed6f9db3c20664147cc224aa387
image.png

使用sonarlint

1.本地检测单个文件 
2.本地检测项目

扫描结果

我们可以打开我们的项目执行扫描,结果是这样的


image.png

相关文章

网友评论

      本文标题:SonarQube学习之SonarLint

      本文链接:https://www.haomeiwen.com/subject/bmtzjrtx.html