SonarQube的使用心得

编程入门 行业动态 更新时间:2024-10-28 04:23:54

SonarQube的<a href=https://www.elefans.com/category/jswz/34/1769535.html style=使用心得"/>

SonarQube的使用心得

一、使用背景:

SonarQube 是一个用于代码质量管理的开源平台,用于管理源代码的质量。

通过插件形式,可以支持包括 java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。

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

1. 不遵循代码标准

sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写。

2. 潜在的缺陷

sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的缺陷。

3. 糟糕的复杂度分布

文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们, 且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试。

4. 重复

显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方。

5. 注释不足或者过多

没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降;而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷。

6. 缺乏单元测试

sonar可以很方便地统计并展示单元测试覆盖率。

7. 糟糕的设计

通过sonar可以找出循环,展示包与包、类与类之间的相互依赖关系,可以检测自定义的架构规则:通过sonar可以管理第三方的jar包,可以利用LCOM4检测单个任务规则的应用情况,检测藕合。

二、SonarQube的安装、配置

1、jdk

2、sonarqube官网:

www.sonarqube/进行下载

3、SonarQube+Scanner扫描分析器:

sonarsource.bintray/Distributio…

4、mysql数据库:

需要注意点,数据库版本要求;;#----- 5.6<=MySQL _<)~~】

还有数据库的查看mysql默认一次允许写入的包大小:

show global VARIABLES like ‘%max_allowed_packet%‘

Sonarz中数据库配置信息如下:

正常启动后,信息提示如下:可以访问http://localhost:9000/ sonar搭建完毕!!

三、SonarQube的分析、扫描

1、安装必要插件--最重要的是汉化包

2、新建项目进行静态代码扫描

sonar-scanner.bat -D“sonar.projectKey=qixiao" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=105d3da15bc1e355d7a8c290d24b1d0465a571af"

3、生成报告分析

四、SonarQube的总结

为什么要选择SonarQube?

个人使用之后认为 :

SonarQube的优势如下(相比于阿里编码规约这种市面上常见类似软件):

  1. 更加优秀的图形化界面基本上通过界面就可以对自己项目的代码状况一目了然

  2. 可以查询出其它软件难以定位到的问题比如 :

    2.1.可能导致空指针异常的问题 (对象在进行使用前没有加空的判断)

    2.2.可能导致内存泄漏的问题, 在try catch块里面,直接使用e.printStackTrace()将堆栈信息打印到内存的

    2.3.可能导致的漏洞 : 成员变量使用public定义的

还有诸如 : 流等未关闭或者是非正常关闭都能够检测出来! 功能非常强大!!

3.可以辅助开发人员往往发现预期以外的问题能够及时避免。

4.针对续代码扫描,以提前一步预防提升代码质量问题。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

更多推荐

SonarQube的使用心得

本文发布于:2023-11-16 06:36:45,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1614147.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:使用心得   SonarQube

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!