SonarQube是一个管理代码质量的开放平台
可以从七个维度检测代码质量(为什么要用SonarQube):
(1) 复杂度分布(complexity):代码复杂度过高将难以理解、难以维护
(2) 重复代码(duplications):程序中包含大量复制粘贴的代码是质量低下的表现
(3) 单元测试(unit tests):统计并展示单元测试覆盖率
(4) 编码规范(coding rules):通过Findbugs,PMD,CheckStyle等规范代码编写
(5) 注释(comments):少了可读性差,多了看起来费劲
(6) 潜在的Bug(potential bugs):通过Findbugs,PMD,CheckStyle等检测潜在的bug
(7) 结构与设计(architecture & design):依赖、耦合等
Sonar 可以集成不同的测试工具、代码分析工具、持续集成工具、IDE。
Sonar通过对代码质量分析结果数据进行再加工处理,通过量化的方式来度量
代码质量的变化,从而可以方便地对工程进行代码质量管理。
支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。