代码质量检测-Sonar】的更多相关文章

一. Sonar简介 sonarqube系统是一个代码质量检测工具 由以下四个组件组成(https://docs.sonarqube.org/display/SONAR/Architecture+and+Integration) 1>一个sonarqube服务器 包含三个子进程(web服务(界面管理),搜索服务 计算引擎服务(写入数据库)) 2>一个sonarqube数据库 配置sonarqube服务 3>多个sonarqube插件 位于解压目录 extensions\plugins目录…
开始搭建 1.获取 postgresql 的镜像 $ docker pull postgres 2.启动 postgresql $ docker run --name db -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres 3.获取 sonarqube 的镜像 $ docker pull sonarqube 4.启动 sonarqube $ docker run --name sq --link db -e SONARQU…
代码质量检测(SonarQube)整合中文版+阿里P3C 简介 SonarQube是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味.它可以与您现有的工作流程集成,以便在项目分支和拉取请求之间进行连续的代码检查. 连续代码检查,sonar可以单独使用Maven.Gradle推送代码检查,当然也可以在ci引擎进行代码自动检查,如: Jenkins.Git . 服务端 安装 为了快速启动sonarqube实例,我们采用docker的方式. sonarqube默认为英文版的,检查规则为自带的…
说明:sonar依赖数据库. mysql优化 1.笔者使用的是mysql数据库.首先对mysql做简单的优化配置. [root@localhost bin]# cat /etc/my.cnf [mysqld] max_allowed_packet=10M datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent as…
1.  代码质量七宗罪 Sonar是一个代码质量管理系统.它的帮助文档开篇明义,提出了代码质量的七宗罪.总结的比較到位.最好还是一看: 1.        Bug和隐藏Bug(Bugs and Potential Bugs) 2.        违反编码规范(Coding Standards Breach) 3.        复制粘贴(Duplications) 4.        缺乏单元測试(Lack of Unit Tests) 5.        恶劣的复杂度分布(Bad Distri…
JavaNeverGiveUp教程篇 用jenkins+sonarqube去检查代码是非常方便的,它能检查出代码中可能存在的一些问题,比如io流未关闭.空指针异常.死循环.代码不规范等问题. 1. 搭建环境和下载工具包 1.1搭建环境 window系统+Jdk1.8+mysql5.6+python3.6 1.2下载工具包 工具包 描述 下载地址(未精确到版本号) sonarqube-7.4.zip sonarqube核心包 https://www.sonarqube.org/downloads/…
一.需求 在我们开发的过程中,难免有时候代码写的不规范,或存在一些静态的bug问题,这个时候一个良好的代码检查工具就很有必要,而sonarqube正好可以满足整个要求. 二. docker-compose 文件的编写 version: "3" services: sonarqube: image: sonarqube:8.3.1-community container_name: sonarqube restart: 'no' networks: - sonarnet environm…
一.下载 插件的下载地址(sourceforge):FindBugs-Eclipse插件 二.安装 Eclipse插件的安装,就不多说了. 三.使用 1.找一个Project,选中它(也可以针对某个Package或者某个Java文件),右键,会看到如下图所示的菜单.点击[Find Bugs],看一下运行的结果,你就知道这是干什么用的了. 2.检查完以后,在 Bug Explorer 视图中,会看到结果,如图.都是些明显或者不明显的BUG. 例如, a.Comparison of String o…
代码统计工具 PHPLOC安装:wget https://phar.phpunit.de/phploc.phar chmod +x phploc.phar sudo mv phploc.phar /usr/local/bin/phploc使用:phploc 你的项目目录 代码复制检查: PHPCPD wget https://phar.phpunit.de/phpcpd.phar chmod +x phpcpd.phar sudo mv phpcpd.phar /usr/local/bin/ph…
演示环境:Mac OSX10.12.2 Xcode8 先瞄一眼最终成果- 1.JDK,DBMS(演示环境使用Mysql) 2.创建sonar数据库和用户 mysql -u root -pCREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; CREATE USER 'sonar' IDENTIFIED BY 'sonar'; GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED B…
1.  SonarLint SonarLint是一个代码质量检测插件,可以帮助我们检测出代码中的坏味道 下载与安装 在需要检测的单个文件或者单个项目上右键 --> Analyze --> Analyze with SonarLint 或者选中文件或目录,点击菜单栏 Analyze --> Analyze with SonarLint 我们还可以禁用某些规则 如果需要同步自定义的规则时,可以绑定到SonarQube 查看检测的结果 对于代码中的警告我们不能视而不见 有了代码质量检测工具以后…
关注代码质量是高效开发必须要做的一件事,那么在 Ruby 开发的过程中,是否有什么好的代码质量检测工具呢?下面由 Ruby 工程师路英瑞介绍一下 RubyCritic--一款还不错的代码质量检测工具. 最近在开发 Cloud Insight API(一款能够优雅监控多种操作系统.数据库.中间件.云主机的解决方案) 时,发现一个可以检测 Ruby 代码质量的工具-RubyCritic. RubyCritic 集成 Reek, Flay 和 Flog 这3个分析代码的工具,能够对你的 Ruby 代码…
转载自: https://juejin.im/post/59bb8b546fb9a00a4247532e 背景 代码的复杂度是评估一个项目的重要标准之一.较低的复杂度既能减少项目的维护成本,又能避免一些不可控问题的出现.然而在日常的开发中却没有一个明确的标准去衡量代码结构的复杂程度,大家只能凭着经验去评估代码结构的复杂程度,比如,代码的程度.结构分支的多寡等等.当前代码的复杂度到底是个什么水平?什么时候就需要我们去优化代码结构.降低复杂度?这些问题我们不得而知.因此,我们需要一个明确的标准去衡量…
一.SonarQube介绍       SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查工具结果直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化. SonarQube不仅提供了对 IDE 的支持,可以在Eclipse和IntelliJ IDEA这些工具里联机查看结果:同时 SonarQube 还对大量的持续集成工具提供了接口支持,…
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式.JavaScript 语言本身是一种弱类型脚本语言,具有相对于 C++ 或 Java 语言更为松散的限制,一切以函数为中心的函数式编程思想也为开发人员提供了更加灵活的语法实现.然而,这种灵活性在带来高效的同时,也成为初学或者经验不足的 JavaScript 开发人员的噩梦.形式各异的代码风格.隐含错误的代码行为,严重影响了整体代码…
1.Sonar 介绍 Sonar 是一个用于管理代码质量的开源工具,可以分析代码中的bug和漏洞以及Code Smells,支持20多种编程语言的检测,如java,c/c++,python,php等语言,当前有超过85000家组织在使用sonar.Sonar可以与DevOps工具链完全整合,可以与大多数构建工具进行内置集成,与Jenkins,TFS / VSTS,TeamCity,Bamboo等持续整合引擎轻松集成,支持众多源代码管理配置工具,如git,svn,cvs等. 官方地址:https:…
介绍 Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,比如pmd-cpd.checkstyle.findbugs.Jenkins.通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理.同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar.此外,Sonar 的插件还可以对 J…
使用ant构建的java web项目如何做sonar代码质量扫描?以下就是实际遇到并成功使用的案例一.做sonar扫描的准备工作    1.给web项目增加build.xml构建脚本.    2.下载jar包:jacocoant.jar:sonar-ant-task-2.2.jar    3.搭建一个sonar服务器二.在build.xml中编写jacoco和sonar的脚本 案例的build.xml脚本 <?xml version="1.0" encoding="UT…
Sonar简介: Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测 sonarQube能带来什么? Developers' Seven Deadly Sins 1.糟糕的复杂度分布 文件.类.方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,且如果没有自动化的单元测试,对于程序中的任何组…
持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知 一:Sonar是什么?Sonar 是一个用于代码质量管理的开放平台,通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如FindBugs,PMD等)直接显示在Web页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同…
Sonar搭建成功之后,就可以通过简单的CMD指令进行项目分析,此篇主要介绍使用Sonar来分析.net项目. 扫描步骤: a.    打开CMD,切换到指定的项目根目录,和.sln同级目录即可(此处以一个wpf示例项目为例)  b. 使用msbuild方式通过Sonar scanner扫描代码 CMD命令下运行:SonarQube.Scanner.MSBuild.exe begin /k:"project 1" /n:"Test WPF" /v:"1.0…
Sonar概述 Sonar 是一个用于代码质量管理的开放平台,可以进行代码质量的持续跟踪审查,支持的语言包含C#.java.PHP.C等.可以通过UI一睹Sonar的强大之处. Sonar安装          Sonar是一个基于java的开源平台,环境安装包含JDK安装.数据库安装.Sonar Server安装.Sonar Runner安装. 一.JDK安装 下载java SDK ,下载地址:http://www.oracle.com/technetwork/java/javase/down…
1. 前言 C#语言接入Sonar代码静态扫描相较于Java.Python来说,相对麻烦一些.Sonar检测C#代码时需要预先编译,而且C#代码必须用MSbuid进行编译,如果需要使用SonarQube对C#进行代码质量分析,则需要下载Sonar-Scanner-MSBuild和MSBuild,其中要求MSBuild在V14.0以上. 2. Sonar-Scanner for MSBuild安装与配置 1.下载SonarQube Scanner for MSBuild,它是C# Framewor…
sonarqube是什么 SonarQube是用于持续检查代码质量的开源平台. 可用于持续集成,持续部署流程中的代码检测环节. idea和jenkins都提供了插件配合使用. liunx推荐配置环境 liunx环境配置不合适的话,启动时会报错! 我后面的一个启动时报错就是没有达到要求的配置导致的. sysctl -w vm.max_map_count=262144 sysctl -w fs.file-max=65536 ulimit -n 65536 ulimit -u 4096 docker-…
提高代码质量-工具篇 注:这是一篇翻译文章,原文:How to improve quality and syntax of your Android code,为了理解连贯,翻译过程中我修改了一些陈述逻辑和顺序,同时也加了一些自己的补充. 在这片文章中,我将从工具使用的角度上讲述如何提高 Android 代码质量,这些自动化工具包括 Checksytle.Findbugs.PMD 和 Android Lint. 团队中代码意识不一致,水平参差不齐,代码风格迥异,定下的规范也是熟视无睹.这时候就需…
在这篇文章中,我将通过不同的自动化工具如CheckStyle,FindBugs,PMD以及Android Lint来介绍(如何)提高你的安卓代码质量.通过自动化的方式检查你的代码非常有用,尤其当你在一个团队中工作,为了在你的代码中保持严格的语法格式以及避免很多坏习惯和错误.我将仔细地介绍如何在你空闲的时候直接运用这些工具通过Gradle构建脚本以及如何配置它们. Fork该示例 我强烈建议你拷贝下这个项目工程,尽管我将介绍的案例都是来自它.与此同时,你将能够测试下自己对这些工具的了解情况. 关于…
什么是'git-pylint-commit-hook' 我在工作中,团队为了保证代码和提高代码的质量,要求每个项目都要求安装git-pylint-commit-hook,它是个钩子,会在你提交代码到本地版本库的时候,自动运行,根据配置文件pylintrc中的配置,去检测改动过文件中的代码,并会对其进行评分,如果未达到设置的分数线,则这次提交到本地版本库的操作(commit),强制取消.需要修改代码后,评分超过设定的分数,才可以提交到本地版本库. 我发现这个是个很好的东西,所以就在自己的项目中也尝…
利用 ESLint 检查代码质量 其实很早的时候就想尝试 ESLint 了,但是很多次都是玩了一下就觉得这东西巨复杂,一执行检查就是满屏的error,简直是不堪入目,遂放弃.直到某天终于下定决心深入看了文档,才发现其实挺简单的,只是当时没有看到合适入门教程而已.我相信很多人也有着跟我一样的经历,所以希望将自己的踩坑心得记录下来,让后来者更轻易地掌握 ESLint 的使用,因为它确实是个好东西. JavaScript 是一门神奇的动态语言,它在带给我们编程的灵活性的同时也悄悄埋下了一些地雷.除了基…
JSLint是一个JavaScript的代码质量工具 可能都或多或少的知道JSLint是一个JavaScript的代码质量工具,一个JavaScript语法检查器和校验器,它能分析JavaScript问题并报告它包含的缺点. 被发现的问题往往是语法错误,但也不一定全是,JSLint查看一些代码风格惯例及结构上的问题. 下面我介绍一些JSLint的常识 未定义的变量和函数 JavaScript最大的问题是对全局变量的依赖,特别是隐式的全局变量. JSLint期望所有的变量和函数在使用或调用前都已被…
作者:Williammao, 腾讯移动客户端开发工程师 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处. 原文链接:http://wetest.qq.com/lab/view/290.html WeTest 导读 我们知道,在C++领域,作为进阶阅读材料,必看的书是<Effective C++>. 而<Effective C#>之于C# ,是类似<Effective C++>之于C++一样的存在. 这篇文章,将<Effective C# Second…