首页 > 其他分享 >SonarQube代码质量静态检测

SonarQube代码质量静态检测

时间:2024-04-01 20:15:48浏览次数:22  
标签:分析 静态 SonarQube 代码 SonarLint sonarqube sonar IDE

一、Sonar简介

官网:https://www.sonarqube.org/

sonar是一款静态代码质量分析工具,支持Java、Python、PHP、JavaScript、CSS等25种以上的语言,而且能够集成在IDE、Jenkins、Git等服务中,方便随时查看代码质量分析报告;

sonar通过配置的代码分析规则,从可靠性、安全性、可维护性、覆盖率、重复率等方面分析项目,风险等级从A~E划分为5个等级;

同时,sonar可以集成pmd、findbugs、checkstyle等插件来扩展使用其他规则来检验代码质量;

  1. 开发人员在其IDE中进行编码,并使用SonarLint运行本地分析。
  2. 开发人员将其代码推送到他们最喜欢的SCM中:git,SVN,TFVC等。
  3. Continuous Integration Server会触发自动构建,并执行运行SonarQube分析所需的SonarScanner。
  4. 分析报告将发送到SonarQube服务器进行处理。
  5. SonarQube Server处理分析报告结果并将其存储在SonarQube数据库中,并在UI中显示结果。
  6. 开发人员通过SonarQube UI审查,评论,挑战他们的问题,以管理和减少技术债务。
  7. 经理从分析中接收报告。Ops使用API自动执行配置并从SonarQube提取数据。运维人员使用JMX监视SonarQube Server。

二、SonarLint

SonarLint是sonar团队开发的用于IDE的开源插件,支持eclipse、idea、visual studio、VS code四款IDE工具,开发可以在IDE上直接执行SonarLint对项目代码进行分析;

在市场中搜索SonarLint,安装该插件,在项目/文件上右键点击,下拉菜单中点击SonarLint,选择Analyze with SonarLint,这时会对整个项目/文件内的文件进行分析;

 

三、Sonarqube+Jenkins

sonarqube server服务在172.26.130.48服务器的/opt/sonarqube-7.8目录下;

sonarqube数据库在172.26.130.5对应的MySQL数据库下的sonar库;

访问sonarqube server服务地址:http://172.26.130.48:9000/projects,用户名:admin,密码:admin

Jenkins配置如下:

1,创建一个freestyle的项目,名称自定义;也可以在现有项目中复制一个;

2,配置Git

 

3,配置build信息;

 

#sonar工程标识,随意输入不重复有代表意义即可

sonar.projectKey=bi_build_sonar 

#sonar工程标识,随意输入不重复有代表意义即可

sonar.projectName=bi_build_sonar 

#sonar工程版本号

sonar.projectVersion=1.0 

#源代码路径,依据需要可在$WORKSPACE后加入目标路径,缩小分析范围;

sonar.sources=$WORKSPACE

#class文件路径,依据需要可在$WORKSPACE后加入目标路径,缩小分析范围;

sonar.java.binaries=$WORKSPACE

4,选择分支后执行

执行完成后,点击SonarQube,跳转SonarQube服务器,显示分析报告

 

 

 

 

 

 

 

 

 

 

 

标签:分析,静态,SonarQube,代码,SonarLint,sonarqube,sonar,IDE
From: https://www.cnblogs.com/hd-test/p/18109257

相关文章

  • jacoco+jenkins集成代码覆盖率
    1.需先在jenkins服务器上安装apache-ant(已安装)检查ant是否安装:ant-version 2.然后在jenkins服务器和测试环境上都安装jacoco(jenkins服务器和summer服务器已安装)cd /neworiental/jacocowgethttps://repo1.maven.org/maven2/org/jacoco/jacoco/0.8.5/jacoco-0.8.5.zipu......
  • 静态内部类
    定义在类内部的静态类,就是静态内部类。publicclassOut{privatestaticinta;privateintb;publicstaticclassInner{publicvoidprint(){System.out.println(a);}}}1.静态内部类可以访问外部类所有的静态变量和方法,即使是private的也一样。2.......
  • 什么库是检测未使用和简化代码在python中?
    什么库是检测未使用和简化代码在python?什么是python的Vulture呢?功能:Vulture是一个用于静态分析Python代码的库,专门用于检测未使用的代码。它可以帮助你识别项目中未被引用的函数、类、变量或导入模块,并帮助简化代码结构.使用方法:首先,安装Vulture库:pip install......
  • FreeRTOS系列补充2:重点API函数的应用代码范例(特特特详细)
    目录1、任务创建和删除API函数 动态创建任务函数原型 动态创建任务函数使用范例 静态创建函数原型静态创建任务函数使用范例任务删除函数原型任务删除函数使用范例2、任务挂起和恢复函数任务挂起函数原型任务恢复函数(任务中恢复)原型任务恢复函数(中断中恢复)原型......
  • 【PyTorch 实战2:UNet 分类模型】10min揭秘 UNet 分割网络如何工作以及pytorch代码实现
    UNet网络详解及PyTorch实现一、UNet网络原理  U-Net,自2015年诞生以来,便以其卓越的性能在生物医学图像分割领域崭露头角。作为FCN的一种变体,U-Net凭借其Encoder-Decoder的精巧结构,不仅在医学图像分析中大放异彩,更在卫星图像分割、工业瑕疵检测等多个领域展现出强大的应用......
  • 小程序开发工具拉取代码方法
    1.    下载微信开发者工具官网下载地址https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 2.    开通小程序前端代码的git权限3.    开通体验版权限和开发者权限(需要提供微信号,且微信设置的是可通过微信号添加好友)4.    拉代码......
  • 迟到的总结——代码随想录算法训练营第三十一期
    虽然是迟到了几天,但是该来的还是会来的。在70天的坚持之后,我们成功完成了一期算法训练营,也在毕业之前,给我的本科四年增添了一点ACM的味道,而这种味道以后也不会有了。最初参加算法训练营只是为了考研复试上机考试,但谁知天公不作美,我是注定与这份学历无缘了。好在刷的力扣还能用在......
  • 基于神经网络的心脏健康监测计算机毕设+完整代码+数据
        ......
  • vscode中python下面的代码都变暗了
     现象: 分析在VisualStudioCode(VSCode)中,如果Python代码变暗,这通常是因为编辑器将这些代码识别为未使用或未激活的代码。这可能是由几个原因引起的:代码未被执行或引用:如果代码块没有被函数、类或其他代码结构所引用,VSCode可能会将其视为未使用的代码。代码被......
  • Python 代码混淆工具概述
    在保护Python代码安全方面,有多种混淆工具可供选择,包括Cython,Nuitka,Pyminifier和IPAguard。本文将介绍这些工具的特点和适用情况,以及在实际应用中的注意事项。 ......