作者 陈彩华 文章转载交流请联系 caison@aliyun.com 复制代码
最近公司引入了代码自动检查平台,总结如下:
SonarQube(sonar)是一个开源平台,用于管理源代码的质量。 SonarQube不只是一个质量数据报告工具,更是代码质量管理平台。 支持java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。 SonarQube可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题。
通过以下介绍如何基于Jenkins和SonarQube完成代码质量持续检测。
清单如下,安装方法自行百度谷歌
为了基于Maven方式使用Jenkins,需要再Maven安装目录下的conf/setting.xml文件配置关于sonar的配置
创建一个新任务:
步骤1 创建 选择构建一个自由风格的软件项目
步骤2 配置源码管理 这里是使用了Git来做源码管理,gitlab作为源码库 项目分支填写master
步骤3 配置构建触发器 这里配置H 18 * * *,代表每日18点前定时构建
步骤4 配置构建 第一行使用jacoco插件,进行代码覆盖率测试 第二行使用sonar插件,进行代码检测并提交检测结果
clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true -P dev sonar:sonar 复制代码
SonarQube基本架构图
SonarQube与项目持续集成架构图
Jenkins的每日构建默认是使用master,在开发过程中,有时需要在开发者的开发中的分支进行代码检测 方法:
步骤1 配置Maven 按照 3.1 Maven 的配置说明,配置本地的Maven环境
步骤2 触发检测 在项目顶层目录,执行命令:mvn sonar:sonar即可