博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【代码审计】使用SonarQube进行代码质量分析管理
阅读量:5991 次
发布时间:2019-06-20

本文共 1820 字,大约阅读时间需要 6 分钟。

hot3.png

        在之前的开发中,代码的工作量化和质量化都是一个问题,随着近几年互联网行业的快速发展,代码已经可以来工作量化和质量化,今天我们来说说代码的质量化。代码的质量不是一个小问题,代码的质量问题可能会导致整个软件项目的失败,甚至更严重的问题,因此在日常的代码开发过程中加强代码审计工作(PM)是必要的,同时开发人员自己也应该注重代码质量。目前行业内对代码质量化分析工具有阿里巴巴的p3c、Sonar质量分析工具等,本文我们主要来研究下Sonar这个相比功能比较强大的质量分析工具。

一、SonarQube简介

        SonarQube 是一个代码质量管理的开放平台。通过插件机制,SonarQube 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如JenKins、Hudson等)不同,SonarQube 并不是简单地把不同的代码检查工具结果(例如 FindBugs、PMD等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。 

        在对其他工具的支持方面,SonarQube 不仅提供了对IDE的支持,可以在Eclipse和IntellijIdea 这些工具里联机查看结果;同时 SonarQube 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 SonarQube 。 此外,SonarQube 的插件还可以对Java以外的JavaScript、Xml、C#等其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。

二、准备工作

1.代码分析管理平台SonarQube安装包(本文7.1)

sonarqube-7.1.zip

下载地址:https://www.sonarqube.org/downloads/

2.代码分析扫描工具Scanner安装包(本文2.5)

sonar-scanner-2.5.zip

下载地址:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/

3.JDK(本文1.8)

4.mysql数据库(本文5.5.56)

三、部署过程

1.解压代码分析管理平台SonarQube安装包sonarqube-7.1.zip

105418_RMNE_2846946.png

2.解压代码分析扫描工具Scanner安装包sonar-scanner-2.5.zip

105859_ZdTr_2846946.png

3.配置环境变量

终端输入vi /etc/profile编辑环境变量

110133_kseE_2846946.png

终端输入source /etc/profile使环境变量生效

4.编写启动脚本

 111540_BXHA_2846946.png

5.启动SonarQube

在终端执行我们刚编写的启动脚本

111619_tqEC_2846946.png

此刻,SonarQube已经启动成功,我们访问http://127.0.0.1:9000

111809_0TCE_2846946.png

然后我们登陆SonarQube代码质量分析系统,用户名/密码   默认admin/admin

111941_xoON_2846946.png

备注,里面的两个项目是我之前分析过的

6.配置SonarScanner项目扫描工具

我们首先编写一个sonar-project.properties的配置文件

 112352_O153_2846946.png

然后将改配置文件放到被分析检查项目的目录下

112528_cM0e_2846946.png

注意:如果项目处于版本控制中,会连接版本控制工具去检查,如果连接不通会报错误,这里我们直接删除和svn的关联,然后进行代码检查

7.运行SonarScanner代码扫描工具

进入我们要扫描的项目的更目录下面,运行终端执行sonar-scanner

113507_Ylfm_2846946.png

等待项目被扫描分析完成

121938_9Otl_2846946.png

113554_Wsmd_2846946.png

114729_uQeu_2846946.png

扫描分析完成我们登陆SonarQube代码分析管理平台查看被分析的项目:

122048_X44q_2846946.png我们点进去看下改项目代码分析的详情

122147_tFHY_2846946.png

122221_ThXo_2846946.png

122258_fMhi_2846946.png

四、总结

        本文主要说了下代码质量分析工具SonarQube,该工具可以分析出项目的代码质量,目前我们已经成功的部署了SonarQube代码分析管理平台,并且运行SonarScanner代码扫描工具扫描分析了项目的代码质量,下篇文章我们将介绍使用SonarQube代码分析管理平台怎么去监控项目代码质量、分析项目质量、解决项目中的质量问题等,本文中还有一个问题,就是SonarQube默认使用的内嵌数据库,对于测试来说是够用了,但是正式使用会有一些限制,下文中我们将介绍SonarQube如何使用外置的mysql数据库。

转载于:https://my.oschina.net/zss1993/blog/1816554

你可能感兴趣的文章
我的友情链接
查看>>
AppCan:打造成云生态的移动PaaS平台
查看>>
安装 percona-xtrabackup
查看>>
我的友情链接
查看>>
通过docker部署hadoop集群
查看>>
Python-day3作业-haproxy配置文件管理脚本
查看>>
一天一点T-SQL:获取表&索引在数据库中存储位置
查看>>
我的友情链接
查看>>
(一)MVC模型、django框架、创建app项目
查看>>
TOMCAT-SSL双向认证-配置实例
查看>>
iOS动画
查看>>
【更新】Project 读写管理控件Aspose.Tasks V17.5发布 | 附下载
查看>>
rpmdb: unable to join the environment
查看>>
三星Galaxy Book设备即将来袭
查看>>
centos 6.5 nagios 4.0.8安装
查看>>
极速理解设计模式系列:6.适配器模式(Adapter Pattern)
查看>>
软件验收管理工作内容(一)
查看>>
python和hbase交互
查看>>
C语言的入口函数不一定叫main
查看>>
Django channels
查看>>