SonarQube测试使用
测试使用
拖动一个java项目ScanningTool放到/usr/local,进入目录
在项目根目录下创建sonar-scanner配置文件sonar-perties
项目结构图
执行扫描分析
等待程序执行完毕后打开SonarQube可查看扫描信息
到此整个内网部署已完成
sonarqube架构介绍
SonarQube平台主要由4个组件组成:
(1). SonarQube服务器:
主要包括web服务器,基于ElasticSearch的搜索服务器,计算引擎服务器。
其中,web服务器,是供开发人员浏览查看代码分析结果,进行相应的配置等。
计算引擎服务器主要是处理代码分析报表并将其存储在数据库。
(2). SonarQube 数据库:
存储配置信息和代码分析报表。
(3). 多个Soanr插件:包括分析各种语言的插件。
(4). 多个Sonar Scanner,主要运行在开发人员的代码端,可以单独部署,也可以集成在Maven,Gradle等。
关于SonarQube社区版使用问题及解决方法
1、解决SonarQube平台数据问题
当我们在大规模使用SonarQube进行代码质量检查的时候,我们需要让开发人员每次都能看到当前特性分支的扫描分析数据,以尽快解决有问题的代码,提高代码的质量。开源版本会带来一些问题,因为不支持一个项目多分支的形式,所以我们按照特性分支的名称来生成相对应的扫描项目。(会产生很多Sonarqube项目)
虽然解决了数据不稳定的问题,但又间接的带来了一些问题。
对于SonarQube管理员来说很难管理,增加了任务负担。
总结一下如何解决问题呢?
变更代码扫描的模式,比如将每次特性分支扫描的数据关联到提交的commit信息中。
总之蕞简单的方式就是付费购买开发版、企业版。小型团队也可以使用生成多项目的方式管理。
Sonarqube的优点:
(1)支持所有语言的检测。一个工具,搞定所有。
(2)灵活扩展,插拔式使用。自定义的代码检测规则,可自定义插件,独立打成JAR包放到SONARQUBE插件目录下,重启即生效,开发使用非常方便。而且自带UT验证框架,开发。
(3)规则支持多租户隔离。租户可定制自己的规则集。
(4)生态强大,业界有诸多插件,与jenkins友好集成。
(5)部署使用便捷。
(6)架构松耦合,通过与maven/jenkins等集成,将代码扫描的计算消耗迁移到业务或者构建方的资源上,极大的提升了自身的吞吐能力。
以上信息由专业从事中国sonarqube 安装的华克斯于2024/6/30 10:42:10发布
转载请注明来源:http://szhou.mf1288.com/hksxxkj-2778338670.html