CodeClimate可以根据各种参数(包括代码重复率、代码风格等),提供从A到F的可维护性评分等级,并能够方便用户根据测试覆盖率、或技术债的变化,来确定瓶颈与发展趋势。
CodeClimate的优势包括:
能够借助自动化的Git更新,来简化安装
在代码库中识别出各个“热点”,以标记需要重构的部分
通过提供安全仪表板,来识别应用程序中的漏洞
提供可在本地用于自动化代码审查的API
可通过邮件和RSS反馈,来提供警报和实例的通知
能与VS Code和Atom等集成开发环境(IDE)相整合
可通过名为“cc-test-reporter”的软件库,来测试覆盖率
CodeClimate的缺点包括:
缺乏对于问题的描述、搜索、以及过滤
缺乏可定制能力,且售价较高
由于无法提供用于识别核心复杂性(例如文件长度和复杂度)的规则,因此其误报率比较高
4.Codacy
Codacy是个人开发者和软件开发团队最常用的自动化代码审查工具之一。它能够支持包括Python、Java、Javascript、C/C++、Ruby、以及Golang在内的各种通用编程语言。Codacy可以对代码的复杂性、易错点(error-prone)、安全性、代码样式、兼容性、文档和性能等问题进行审查。
Codacy的优势包括:
通过最小化安装,来实现自动化的代码检查
能够与包括GitHub、GitLab、GitHub Actions、CircleCI等服务相集成
通过协助定义项目的特定目标,来提供实现目标的建议
可分析拉取式请求、以及单独的提交
可通过滤除各种“噪点”和重复性,来专注于新出现的问题
提供了易用且直观的用户界面,可协助开发人员轻松地管理其代码
允许开发人员保存完整的代码质量,以及对代码的纯净度进行审查
Codacy的缺点包括:
缺乏对于问题的搜索能力(个别过滤器除外)
缺乏对于导出代码模式提供支持
5.Veracode
Veracode可被用于代码审查、自动化测试、以及提高代码库的效率。它支持包括Python、Java、Javascript、以及Golang在内的多种通用编程语言。Veracode能够提供两种代码检查工具:静态分析和软件组成分析。其中,静态分析工具可以方便开发人员找到各种错误和反模式,并在代码投入生产环境之前进行修复。而软件组成分析则可以在代码库中,使用第三方程序包来识别漏洞。
Veracode的优势包括:
易于配置和快速上手
提供二进制扫描,以减少对于代码的误报
可指出代码中的真实漏洞,并提出解决方案
提供可自定义的仪表板,并带有直观、友好的用户界面
Veracode的缺点包括:
缺乏可定制的分析规则
用户使用体验欠佳
总的说来,由Veracode提供的代码分析平台可方便开发人员查看、分析和修复代码中的安全漏洞。同时,通过与SDLC的集成,Veracode还可以协助开发人员验证目标代码是否符合OWASP Top 10,以及其他实践标准。
本文来自:简书
感谢作者:鹤子青云上
查看原文:值得推荐的五种自动化代码审查工具
相关阅读 >>
更多相关阅读请进入《Go》频道 >>

Go语言101
一个与时俱进的Go编程知识库。