阅读 9

代码审查必备,Gitee 发布代码质量分析工具 Gitee Scan

在项目开发的过程中,代码质量管理是非常重要的一个环节,项目中代码质量的高低直接影响着整个开发团队的工作效率。虽然代码质量本身并没有特别明确的量化指标,而且根据公司发展的不同阶段,团队规模的不同大小,项目的不同性质等,对代码质量的要求也不尽相同,但如果一个团队的代码质量过低,所带来的问题是相同的,前 Google 工程师王争总结过以下几点:

  • 添加或修改一个简单功能时,涉及要修改的地方特别多,而且很分散
  • 代码不可复用:相似的功能无法复用代码,要重新开发
  • 线上 Bug 频发,排错困难,修复难度大,时间长
  • 有很多奇怪的代码,代码读不懂,新人无法很快了解代码
  • 代码中坑特别多,不敢大动,一不小心就踩坑

代码审查至关重要

这些问题单纯的依靠开发后的人工测试是无法发现的,只能通过代码审查去发现和解决。进行代码审查时,除了严格执行代码规范、编写单元测试、必须的 Code Review、代码模块化等方法以外,有一件趁手的工具也是必不可少的。

Gitee 为了协助用户提高代码质量,进行完善的代码审查,推出了代码质量分析工具 Gitee Scan ,依托于 Gitee 企业版的现有功能,Gitee Scan 能够通过扫描仓库内的代码,帮助开发团队找出其中的问题,尤其是一些不需要人工审查的低质量错误,帮助团队进行代码审查,从而提高代码质量。

Gitee Scan 可以同时从代码缺陷和代码规范两个方面对代码进行扫描,快速定位错误代码和漏洞的位置,帮助开发人员将更多精力放在解决问题而不是发现问题上。目前 Gitee Scan 支持的语言有 Java、Python、PHP、C、C++、JavaScript、Go 以及独立针对 Android 特性的扫描。

Gitee Scan 的工作方式

在使用 Gitee Scan 时,用户可以通过两种方式发起代码质量分析:

  • 进入指定仓库中选择仓库分支发起全量扫描
  • 开启新建 Pull Request 增量代码自动扫描

当开发人员想要对以前的代码进行错误检查时,可以选择进行全量扫描。全量扫描时,用户可以直接选择某个分支直接进行扫描操作并产出报告。报告中包含了缺陷报告及规范报告,在缺陷报告中,Gitee Scan 会通过 Bug、安全漏洞以及代码异味三个类别将问题分类,方便开发人员有针对性的修改。

如下图所示,报告中已经精准的定位到了错误代码的位置以及其可能的危险程度,开发人员直接进行修改即可。

在开发人员想要对后续产生的新代码进行错误检查时,可以选择进行增量扫描。Gitee Scan 增量扫描与全量扫描原理相同,但增量扫描更加自动化。开启增量扫描的开关后,企业内的所有分支在接受 Pull Request 前都会经过 Gitee Scan 的自动扫描并产出报告,每提交一次 Pull Request 后都会对提交的代码进行一次自动扫描。

更有效的扫描工具

测试结果表明,针对同一份代码,Gitee Scan 所扫描出的漏洞数量比同类型产品 SonarQube 多出 41.7%,并且 Gitee Scan 扫描后提供了代码评级及代码规范报告,用户可以对代码质量有更直观的了解。

在后续的更新中,Giee Scan 会增加更多语言的支持以及更加深度的扫描能力,并且后续计划增加基于 CVE 的依赖项漏洞扫描,进一步帮助用户提升研发质量和效率。

点击下面的链接访问 Gitee 企业版:gitee.com/enterprises


关注下面的标签,发现更多相似文章
评论