sonarqube
type
status
date
slug
summary
tags
category
icon
password
Sonar是一个用于代码质量管理的开放平台,通过插件机制,sonar可以收集不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(比如jenkins)不同,sonar并不是简单地把不同的代码检查工具结果直接显示在web页面,而是通过不同的插件对这些结果进行加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。在对其他工具的支持方面,sonar不仅提供了对IDE的支持,可以在Eclipse和Intellij IDEA这些工具里联机查看结果;同时sonar还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用sonar,此外,sonar的插件还可以对java以外的其他编程语言提供支持,对国际化及报告文档也有很良好的支持;
sonarqube是一款用java语言编写的程序,它主要作用是提供一个web界面,展示扫描分析结果以及系统管理,插件管理等;扫描代码还是sonar-scanner这个插件做的,它的工作原理是sonar-scanner通过识别项目中的sonar-project.properties配置文件中定义的内容,把对应的项目源码进行扫描,把扫描后的结果保存到指定的数据库;然后sonarqube通过连接配置的数据库,把sonar-scanner存入数据库中的数据加载到web界面,从而用户就可以通过web界面查看扫描的项目源码的结果
代码质量测试代码质量七宗罪:
- 编码规范:是否遵守了编码规范,遵循了最佳实践。
- 潜在的BUG:可能在最坏情况下出现问题的代码,以及存在安全漏洞的代码
- 文档和注释:过少(缺少必要信息)、过多(没有信息量)、过时的文档或注释。
- 重复代码:违反了Don't Repeat Yourself(不要重复你自己)原则。
- 复杂度:代码结构太复杂,难以理解、测试和维护。
- 测试覆盖率:编写单元测试,特别是针对复杂代码的测试覆盖是否足够。
- 设计与架构:是否高内聚、低耦合,依赖最少。

上一篇
openssh
下一篇
zabbix
Loading...
keepalived