一、简介
-
SonarQube 介绍
SonarQube 是一个开源的代码质量分析平台,便于管理代码的质量,可检查出项目代码的漏洞和潜在的逻辑问题。同时,它提供了丰富的插件,支持多种语言的检测,如Java、Python、Groovy、C、C++等几十种编程语言的检测。它主要的核心价值体现在如下几个方面:
(1) 检查代码是否遵循编程标准:如命名规范,编写的规范等。
(2) 检查设计存在的潜在缺陷:SonarQube 通过插件 Findbugs、Checkstyle 等工具检测代码存在的缺陷。
(3) 检测代码的重复代码量:SonarQube 可以展示项目中存在大量复制粘贴的代码。
(4) 检测代码中注释的程度:源码注释过多或者太少都不好,影响程序的可读可理解性。
(5) 检测代码中包、类之间的关系:分析类之间的关系是否合理,复杂度情况。
-
SonarQube 平台是由 4 个部分组成
① SonarQube Server
② SonarQube Database
③ SonarQube Plugins
④ SonarQube Scanner
-
3、SonarQube 工作流程
SonarQube 在进行代码质量管理时,会从下图 所示的七个纬度来分析项目的质量。

SonarQube 需要数据库的支持,用于存储检测项目后的分析数据,同时为了实现可持续监测,还需要持续集成工具(如Jenkins)的支持,在构建版本前,通过Jenkins+Sonar 插件执行项目分析指令,最终的结果会通过SonarQube 服务器的Web 页面展示。下图是使用SonarQube做代码持续审查的流程图:

开发人员把代码push到SCM(如gitlab)【上图第2步】,jenkins构建定义好的job,然后通过jenkins 插件(sonar scanner)分析源码【上图第

SonarQube是一款开源的代码质量分析平台,支持多种编程语言,通过插件检查编程标准、潜在缺陷、重复代码量、注释程度及代码间关系。与Jenkins结合,实现代码持续审查。
&spm=1001.2101.3001.5002&articleId=106918963&d=1&t=3&u=d32377aeaffc4765953146551e4bf0cf)
5966

被折叠的 条评论
为什么被折叠?



