目前最强大的代码质量管理开源工具是什么?来问研发云啊!
Posted 研发云
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了目前最强大的代码质量管理开源工具是什么?来问研发云啊!相关的知识,希望对你有一定的参考价值。
软件是交付给用户、并由用户体验的产品
代码则是实现软件功能的源文件
所以代码的质量直接关系到软件产品的质量
随着 IT 行业中软件产品的推陈出新
客户对于软件产品的要求也越来越高
因此需要高质量地管理软件代码
及时对代码质量进行分析
从而给出合理的解决方案
SonarQube 正是在这种情况下
被集成入持续集成的系统内
与当今众多的代码质量管理工具相比
它更具有特色和竞争力
SonarQube 为代码的质量管理提供了一个平台
对传统的代码静态检测能进行整合
可以说是目前最强大的代码质量管理开源工具之一
SonarQube
SonarQube (以前叫Sonar)是一个用于代码质量管理的开源平台。通过插件机制,SonarQube 可以与Jenkins、Eclipse 和 JIRA 等其他外部工具集成,从而实现对java、C#、C/C++、PL/SQL、Cobol、JavaScrip、Groovy等编程语言的代码质量进行全面自动化分析和管理,以及再加工处理。SonarQube 用量化的方式度量代码质量的变化,因此可以方便地对不同规模和种类的工程进行代码管理操作。
SonarQube 覆盖了代码质量管理的7个方面。通过插件扩展,SonarQube 还支持新的编程语言、能添加规则引擎、计算更复杂的度量指标,对国际化以及报告文档化也有良好的支持。
SonarQube能检测的内容包括:糟糕的复杂度分布、重复代码、缺乏单元测试、不符合代码规范、缺乏或者过多的注释、潜在的bug以及糟糕的设计,还能比对检测结果与上次的差异。如果代码质量降低则警示用户,帮助开发人员及时掌握整个项目的代码质量。开发者可以每天通过其对正在开发的项目进行分析检测,根据结果及时调整代码,使代码始终维持在健康的状态。
SonarQube 的主要特点如下
支持多种语言:20种以上的主流编程语言;
自动化分析:通过与持续集成平台进行集成可以实现自动化质量分析;
提交前预检查:IDE插件SonarLint可以让开发者在提交代码前进行自检查;
扩展性强:插件扩展机制强大,已有60+插件,还可以开发自己的插件;
问题关联到源码:所有问题都关联到具体的代码行,比较直观;
易于集成:通过插件支持多种软件生命周期管理平台。
研发云工具链中使用的是SonarQube 6.3.0
在6.x版本之后才支持从HttpHeader里边
获取用户信息并进行单点登录操作
它提供了规则、警报、阈值、排除和设置功能
web界面只是起到了展示功能
分析代码的功能是由各种分析器来实现的
(依靠各种本地插件,Maven插件,Jenkins插件等)
分析器分析完代码之后会上传到SonarQube 去展示
SonarQube 各组件的工作流程:
1) 开发者在IDE中编码,并使用SonarLint执行本地代码分析;
2) 开发者向软件配置管理平台(Git,SVN,TFVC等)提交代码;
3) 代码提交触发持续集成平台自动构建、使用SonarQube Scanner执行分析;
4) 分析报告被发送到SonarQube Server进行处理;
5) 处理好的报告生成对应可视化的视图,并将数据保持到数据库;
6) 开发者可以在web页面查看,评论并解决问题。
当模块之间的联系越来越复杂
代码质量管理也面临越来越多的困难
SonarQube 给出了代码质量管理问题的解决方案
帮助开发者更好的进行产品迭代和优化
以便为广大用户提供更优质的软件产品服务
获取更多产品介绍及业界动态
以上是关于目前最强大的代码质量管理开源工具是什么?来问研发云啊!的主要内容,如果未能解决你的问题,请参考以下文章