介绍是一个开源平台,用于管理源代码的质量。 多维度分析代码:代码量、安全隐患、编写规范隐患、重复度、复杂度、代码增量、测试覆盖率等。 支持30+编程语言的代码扫描和分析,包含javapythonC#javascriptgoC++等。 涵盖了编程语言的静态扫描规则: 代码编写规范+安全规范 通过插件机制,可以集成不同的测试工具,代码分析工具,以及持续集成工具(jenkins) 官方网站:Self-m
最近公司要求,学习了一下使用sonar进行代码分析检查。其中走了许多坑,配置也崩溃好几次。。。因此写下详细步骤以防以后再碰到这样的坑一、安装Sonar环境:Windows10,sonarqube6.7,java1.8,MySQL5.7.1  (注:用来检查java1.8以下的项目依旧可以使用,但是环境变量得是1.8的才能启动,我本次使用检查项目就是jdk1.7) Sonar官
转载 2023-07-14 14:14:04
458阅读
本文介绍了在jenkins多分支流水线中集成sonarQube,从而实现在持续集成中代码质量检查。 1.sonarQube的简介SonarQube是一款自动化代码审查工具,用于检测代码中的错误、漏洞和代码异味。它可以与你现有的工作流集成,以支持跨项目分支和拉取请求的连续代码检查。其工作流程如下:如图SonarQube由以下4个组件组成:1.SonarQube
SonarQube是什么SonarQube 是一个用于代码质量管理的开源平台,用于管理源代码的质量。 通过插件形式,可以支持包括 java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。Sonar 不仅提供了对 IDE 的支持,可以在 Eclipse和 IntelliJ IDEA 这些工具里联机查看结果;同时 S
转载 2023-12-03 12:58:33
371阅读
sonarqube代码检查使用教程(sonarqube教程二)sonarqube如何安装请访问上一篇文章当我们安装好 sonarqube后 就可以进行代码检查了配置文件在我们需要检查项目目录下 新建 sonar-project.properties 配置文件 内容如下sonar.projectKey=wzgy sonar.projectName=wzgy sonar.projectVersion
最近因为工作原因构建了一下代码检查流程,这里记录一下安装sonar预置条件1)已安装JAVA环境 版本:JDK1.8 2)已安装有mysql数据库 版本:mysql5.6以上 3)下载sonarQube与sonar-scanner 版本:sonarQube5.6 版本:sonar-scanner2.8创建数据库创建用户sonar: CREATE DATABASE s
转载 2024-06-10 07:27:46
74阅读
一 原文二 操作详解1. 安装配置 SonarQube1.1. 安装需要的软件包yum install -y epel-release unzip vim wget1.2.安装openJDK.yum install -y java-11-openjdk java-11-openjdk-devel1.3. 安装 PostgreSQL 10.添加 PostgreSQL 10 YUM 源 rpm -Uv
Sonar家族框架检测代码质量七个维度复杂度分布(complexity):代码复杂度过高将难以理解重复代码(duplications):程序中包含大量复制、粘贴的代码而导致代码臃肿,sonar可以展示源码中重复严重的地方单元测试统计(unit tests):统计并展示单元测试覆盖率,开发或测试可以清楚测试代码的覆盖情况代码规则检查(coding rules):通过Findbugs,PMD,Chec
一、代码复杂度问题1、类的复杂度过高。说明:Split this class into smaller and more specialized ones to reduce its dependencies on other classes from 24 to the maximum authorized 20 or less.原因:类之间的耦合度过高,引用了太多其他的类,错误示例:class
转载 2024-09-20 21:52:40
84阅读
前期准备:SonarQube 简介环境准备软件准备安装配置汉化插件安装话不多说,开始SonarQube 简介SonarQube是一个用于管理代码质量的开放平台,可以快速的定位代码中潜在的或者明显的错误。目前支持java,C#,C/C++,Python,PL/SQL,Cobol,JavaScrip,Groovy等二十几种编程语言的代码质量管理与检测。SonarQube特性持续检查项目整体的健康程度:
删除项目在学习阶段,我们可能需要经常删除已构建的项目,在sonarqube中想要删除一个项目有两个入口,都在Administration导航栏内.在项目内部的管理界面删除如果项目处于打开状态,如下图示点击Administration会出现一个下拉菜单,其中最后一项为Deletion,点击后进入提示是否删除界面,确认删除即可.从主控台 管理界面内删除如果我们要删除多个项目,分别进入每个项目,然后点击
转载 2023-07-19 21:43:30
866阅读
0. 介绍.   sonarQube可以帮我们检测代码的一些规范和一些问题,对于大家写代码没有规范性的一些问题,可以使用sonarQube帮你检测出来,毕竟国外的程序员因为同事写代码不规范都枪杀了,所以为了生命安全,我们来使用一下sonar帮我们检测代码的规范性,以确保生命安全.....            &nbs
转载 2023-09-18 06:55:32
297阅读
在做Jenkins集成sonar的时候,照着网上的教程遇到了很多模糊点,网上的教程都是一些相同的大致过程,在一些某个点上并没有讲的很清楚,遇到的时候找了很久的资料,一个一个的试,才知道要怎么配置,于是集成部署的过程就不再多说了,网上教程很多,在这里只写一些自己遇到的问题,网上说的模糊的地方。1、配置sonarsonar.properties中sonar.jdbc.username和sonar.jd
转载 2024-02-20 11:47:32
172阅读
背景最近接收到C++代码检测的需求,一开始上网找了很久,sonar的检测都是扫描java、web等,很少有C++的,现将自己成功搭建和测试的结果记录于此。工具准备SonarQube工具:展示扫描报告,版本7.6(SonarQube 7.9以上版本不再支持mysql)sonar_scanner工具:代码扫描工具Cppcheck工具:Cppcheck是一种C/C++代码缺陷静态检查工具,不同于C/C+
转载 2023-10-24 08:20:14
629阅读
JavaScript 引擎在查找一个变量的时候,有两种查找机制:LHS 和 RHS。RHS 的查询是简单地查找到某个变量的值,而 LHS 则是试图找到变量的容器的本身。一个简单的例子:当我们执行 console.log(a) 时,执行的就是 RHS ,因为这里 a 并没有赋予任何的值。相应的,需要查找并取得 a 的值,这样才能将值传递给 conso.log(..)。而当我们执行到 a = 2 时,
转载 1月前
325阅读
在整个产品的Devops环节中,代码扫描是比较关键的一个环节,常见的工具有findbugs 、pmd、SonarQube等。SonarQube是一个代码质量管理的开源平台,用于检测代码中的错误、漏洞并确保代码规范。它可以与现有的工作流集成,以实现跨项目和拉取请求分支的代码检查,并支持Java、Python、PHP、JavaScript、CSS等25种以上的语言。SonarQube能够集成在IDE、
Python 提供了如下两个函数来检查类型:issubclass(cls, class_or_tuple):检查 cls 是否为后一个类或元组包含的多个类中任意类的子类。isinstance(obj, class_or_tuple):检查 obj 是否为后一个类或元组包含的多个类中任意类的对象。通过使用上面两个函数,程序可以方便地先执行检查,然后才调用方法,这样可以保证程序不会出现意外情况。如下程
转载 2024-08-23 16:22:27
18阅读
1. 前期准备① 环境jdk 1.8 配置(见其他随笔)MySQL 5.7(见其他随笔)② 工具下载sonarqube 下载 <链接:https://pan.baidu.com/s/1pDMgIDnXccDi305WHDWfJQ 密码:8w0n>SonarQube+Scanner下载 <链接:https://pan.baidu.com/s/1xWJtYOIFQSA4WMzHrr5
SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误sonarQube : 提供图形界面管理,报表展示,可灵活配置代码检测的插件 (findbugs;checkStyle;pmd等) 一、安装:1.下载好sonarqube后,解压打开bin目录,启动相应OS目录下的StartSonar。如本文演示使用的是win的64位系统,则打开D:\sonar\son
转载 2024-05-07 21:14:24
181阅读
目录1. Refactor this loop to do more than one iteration.2. Duplicate key '*'.3. Remove this useless assignment to variable "n".4. This branch duplicates the one on line 2105. Remove this condi
  • 1
  • 2
  • 3
  • 4
  • 5