苏州华克斯-中国sonarqube 扫描报告

3. Sonar 组成



4. Sonar 集成过程




开发人员在他们的ide中使用SonarLint运行分析本地代码。

开发人员将他们的代码提交到代码管理平台中(SVN,GIT等)

持续集成工具自动触发构建,调用SonarScanner对项目代码进行扫描分析

分析报告发送到SonarQube Server中进行加工

SonarQube Server 加工并且保存分析报告到SonarQube Database中,通过UI显示分析报告







Sonarqube检测

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量,通过插件形式,可以支持包括java,C#,C/C++,代理商sonarqube 扫描报告,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测

Rules提示



当然,这对于初学来说是一个很好的教程,搞懂这些规则可以避免bugs的出现,提供自己的开发能力。

rule正确实例提示



糟糕的复杂度分布 

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

重复 

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

缺乏单元测试

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

没有代码标准

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

没有足够的或者过多的注释

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

潜在的bug



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


糟糕的设计

 通过sonar可以找出循环,展示包与包、类与类之间的相互依赖关系,可以检测自定义的架构规则;

 通过sonar可以管理第三方的jar包可以利用LCOM4检测单个任务规则的应用情况 ,检测耦合




sonarQube的基本使用(四)


7.执行代码检查

用测试用户登录之后,测试用户只能看到公开的4个项目和一个私有的项目testPrj,当前该项目还没有运行过代码检查,所以没有检查结果信息。



将之前的代码检查命令在项目根目录下(与pom.xml同级)执行,执行时会进行相关插件安装。


安装成功后,执行代码检查命令,这里我们用令牌代替了用户名密码。

执行成功后输出BUILD SUCCESS.

回到sonarQube,中国sonarqube 扫描报告,发现testPrj项目的检查结果已经出来了。但是你会发现项目名却不是testPrj,而是别名称,之前也提到过这一点,sonarQube的项目标识符不会变,但是项目名称会被代码项目名覆盖。

点击项目名进去检查总览页,打开项目信息面板我们可以看到项目标识还是testPrj,左侧绿域表示检查结果的质量阈状态,中间区域显示bug和漏洞的数量等信息。




苏州华克斯-中国sonarqube 扫描报告由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司是江苏 苏州 ,行业软件的见证者,多年来,公司贯彻执行科学管理、创新发展、诚实守信的方针,满足客户需求。在华克斯领导携全体员工热情欢迎各界人士垂询洽谈,共创华克斯更加美好的未来。

苏州华克斯信息科技有限公司
姓名: 华克斯 先生
手机: 13862561363
业务 QQ: 3521016152
公司地址: 苏州工业园区新平街388号
电话: 0512-62382981
传真: 0512-62382981