写点什么

16 个好用的 Code Review 工具

  • 2020-01-13
  • 本文字数:3335 字

    阅读完需:约 11 分钟

16个好用的Code Review工具

Code Review 工具自动化了代码审核过程。它们有助于静态代码分析,这对于交付可靠的软件应用程序至关重要。市场上有太多的 Code Review 工具了,以至于为我们的项目选择一个合适的 Code Review 工具都会成为一种挑战。本文精选了 16 个 Code Review 工具,它们都具有最受欢迎的特性和最新的下载链接。该列表既包含了开源工具也包含了商业工具。

1. Review Assistant

Review Assistant 是 Visual Studio 的一个扩展。它支持 Visual Studio 2019、2017、2015、2013、2012 和 2010。Review Assistant 可以帮助创建审查请求并能在不离开 IDE 的情况下对请求做出响应。它支持 TFS、Subversion、Git、Mercurial 以及 Perforce。Review Assistant 将“代码审查板(Code Review Board)”窗口添加到 IDE 中。该窗口可用于管理用户所有可用的审查。


主要特性:


  • 灵活的代码审查

  • 支持在代码中讨论

  • 带有缺陷修复的迭代审查

  • 电子邮件通知

  • 丰富的集成功能

  • 报告和统计

  • 该插件可替换 Visual Studio 代码审查功能(Visual Studio Code Review Feature)


下载链接:


https://bit.ly/2Uw0a6M

2. Reshift

Reshift 是一个基于 SaaS(Software-as-a-Service,软件即服务)的软件平台,它可以帮助软件开发团队在部署代码到生产环境之前,更快地识别出代码中更多的漏洞。可以减少发现和修复漏洞的成本和时间,可以识别数据泄露的潜在风险,并能帮助软件公司达到合规性和法规要求。


主要特性:


  • 可以与 Github 和 Bitbucket 集成

  • 通过拉取请求(pull-request)这个工作流为团队的处理流程提供安全性,并可以避免切换到其他面板

  • 智能筛选,通过标记问题来减少超时误报

  • 跟踪每个开发人员功能分支的漏洞

  • 在合并到主干之前了解关键的漏洞

  • 如果引入了新漏洞,则关闭构建


下载链接:


https://bit.ly/33Oubj8

3. Gerrit

这是一个开源的轻量级工具,它是基于“Git 版本控制系统”来进行构建的。在所有用户都是受信提交者的项目环境中,该工具非常有用,因为该工具允许用户检查项目中所做的总体变更。


主要特性:


  • Gerrit 阻止用户直接推送到 Git 库

  • 允许我们在源代码中查找错误

  • 可以帮助我们创建新变更或更新现有的变更

  • 允许我们在开发者模式和 Git 库之间进行转换


下载链接:


https://www.gerritcodereview.com/

4. Codestriker

Codestriker 是一个开源的在线源码审查 Web 应用程序。此代码审查工具可以帮助我们在数据库中记录问题、注释和决策。它也可以用于代码检查(Code Inspections)。


主要特性:


  • 支持传统的文档审查

  • 它可以与 Bugzilla、ClearCase、CVS 等集成

  • Codestriker 已获得 GPL 许可


下载链接:


http://codestriker.sourceforge.net/

5. Phabricator

Phabricator 是一个开源的源码扫描程序。它还包括了基于 Web 的轻量级代码审查、规划、测试、bug 发现等功能。


主要特性:


  • 提交前(Pre-Commit)的代码审查

  • 可以跟踪大量的 bug

  • 可以帮助我们为每个部门构建独立的任务表单

  • 可定制任务管理

  • 允许我们编写有用的注释和备注信息


下载链接:


https://www.phacility.com/

6. Crucible

Crucible 是一个基于 Web 的代码质量工具。开发人员利用它来进行代码审查、bug 及缺陷发现、变更讨论和知识共享。该工具可以帮助他们捕获主要缺陷并改进他们的代码架构。


主要特性:


  • 通过内联注释、线程引用和对话来协作开发正确的代码

  • 允许使用活动流(活动流可以显示最新的注释)实时跟踪项目和审查更新

  • 当代码在整个审查过程中被重构和修改时,可以确保我们正在审查的所有文件都是最新的

  • 可以根据审查活动自动更新 Jira 软件问题,并且通过单击即可将审查意见转换为问题


下载链接:


https://www.atlassian.com/software/crucible

7. Review Board

Review Board 是一个安全的代码审查工具。它可用于开源项目和公司的代码审查和文档审查。


主要特性:


  • Review Board 可以与 ClearCase、Performce、CVS、Plastic 等集成

  • 该代码是语法高亮显示的,这使得它更具可读性

  • 支持提交前(pre-commit)审查和提交后(post-commit)审查


下载链接:


https://www.reviewboard.org/

8. Barkeep

Barkeep 是一个友好的代码审查系统工具。它提供了一种最简单的方法来审查代码。它允许我们查看任何 Git 库的提交、查看差异点并编写注释。


主要特性:


  • 该工具允许我们发送电子邮件给相关的提交者

  • 支持提交后(post-commit)的工作流

  • 提供了干净的用户界面,易于浏览


下载链接:


http://getbarkeep.org/

9. Reviewable

Reviewable 是一个轻量级的、功能强大的代码分析工具,它使代码审查更快、更全面。它通过用户界面清理、bug 发现以及语法高亮显示来帮助我们提高代码质量。


主要特性:


  • 完全可定制的逻辑可以帮助我们确定何时能完成审查

  • 仅适用于 GitHub 和 GitHub Enterprise,可与它们进行无缝集成,最小化管理工作

  • 行注释可以跨文件版本进行映射,并会一直保留到问题解决为止

  • 可以帮助我们完整地跟踪审查人(每个文件的每个修改版本都是谁审查的),以确保没有遗漏任何变更。


下载链接:


https://reviewable.io/

10. Peer Review Plugin

Peer Review Plugin 消除了耗时的代码审查会议的需求,因为它使我们可以在基于 Web 的用户友好的环境中审查代码。


主要特性:


  • 改善的知识转移体验

  • 可以帮助我们审查存储库中的文件并对其进行注释

  • 以 MS Word docx 格式导出数据

  • 更好的代码以及更少的缺陷

  • 支持 Git、SVN 和 GitHub


下载链接:


https://trac-hacks.org/wiki/PeerReviewPlugin

11. Codacy

Codacy 工具通过静态代码分析自动识别问题。在每个拉取(pull)和提交(commit)请求中,它能快速地告诉用户有关安全性问题、代码重复和代码复杂度的信息。


主要特性:


  • 可以帮助我们在流程中及早发现新问题,并防止线上受到影响

  • 代码质量可视化

  • 可以无缝地集成到我们的工作流中

  • 自我托管的解决方案,在服务器上提供了一流的安全性


下载链接:


https://www.codacy.com/

12. CodeFactor.io

使用 Code Factor 工具,我们可以了解整个项目的代码质量、最近提交的内容以及问题最多的文件。我们可以针对每次提交(commit)和拉取(pull)的请求进行跟踪及问题修复。


主要特性:


  • 可以概述我们的代码库

  • 可以与我们的开发过程无缝集成

  • 我们可以控制要分析的内容

  • 帮助我们捕获每一行代码

  • 简化代码审查流程并改进可操作的报告

  • 它提供了分析数据,可以帮助我们理解、贡献并与同行交流


下载链接:


https://www.codefactor.io/

13. Helix Swarm

Helix swarm 是一个代码审查工具,它可以安排审查、共享内容并查看代码审查变更。它支持持续集成部署。它可以帮助我们监控进度、自动化设计过程并提高项目的发布质量。


主要特性:


  • 允许我们按照优先级进行筛选

  • 可以在个人资料页自定义通知设置

  • 可以通过将多个变更分支附加到提交前(pre-commit)审查中来同时审查独立的组件

  • 通过将 Helix Core 与 Ping Identity、Okta 或其他工具集成来帮助我们确保代码是安全的


下载链接:


https://www.perforce.com/products/helix-swarm

14. Rhodecode

Rhodecode 是一个开源的、安全的企业级源码管理工具。该工具可作为 Git、Subversion 和 Mercurial 的集成工具。


主要特性:


  • 团队协作可以提高代码质量

  • Rhodode 提供了工作流自动化,可以加快协作

  • 权限管理使软件开发更安全

  • 可以帮助我们将现有代码库与新的问题跟踪工具集成在一起


下载链接:


https://rhodecode.com/

15. Veracode

Veracode 是一个代码审查和静态分析工具。它是基于 SaaS 模型构建的。此工具允许我们从安全性的角度分析代码。该工具使用二进制代码 / 字节码,并能保证 100% 的测试覆盖率。


主要特性:


  • 即使源码不可用,也可以通过一致的流程和策略测试桌面、Web 或任何大小的桌面应用程序

  • 不需要手动及自动配置就可以测试多个应用程序

  • 通过在 SDLC 中简化和集成测试来自动化不同的工作流

  • 通过持续审查过程来提高代码的生产效率


下载链接:


https://www.veracode.com/products/binary-static-analysis-sast

16. JArchitect

JArchitect 是一款易于使用的代码审查工具,可用于分析 Java 代码。每次审查后,它都会发送一份项目开发相关的报告。该工具还可以帮助我们提高代码的可维护性。


主要特性:


  • JArchitect 代码规则是 LINQ 查询,可以在第二个查询中生成

  • JArchitect 可以帮助我们发现数百个甚至数千个影响实际代码库的问题

  • 当发现新问题时,它会立即通知开发人员


下载链接:


http://www.jarchitect.com/

英文原文

16 BEST Code Review Tools in 2020 [Static Code Analysis]


2020-01-13 15:0023305
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 395.7 次阅读, 收获喜欢 1983 次。

关注

评论 1 条评论

发布
用户头像
没有upsource吗?
2020-01-19 19:46
回复
没有更多了
发现更多内容

软件测试开发/全日制丨软件开发流程 学习笔记

测试人

软件测试

云消息队列 Kafka 版生态谈第一期:无代码转储能力介绍

阿里巴巴云原生

kafka 阿里云 Serverless 云原生

软件测试/测试开发全日制培训|Pytest跳过用例和失败重试

霍格沃兹测试开发学社

Lazada商品详情API(lazada.item_get)获取商品的评论和评分信息

技术冰糖葫芦

API

2023 年最先进认证方式上线,Authing 推出 Passkey 无密码认证

Authing

身份认证 Authing 无密码认证 Passkey

走进龙芯中科交流会圆满结束!深入探讨未来合作规划 | 理事长走进系列

OpenAnolis小助手

合作伙伴 龙蜥社区 龙芯中科 理事

低代码:实现数据可视化的强大助手

不在线第一只蜗牛

数据库 低代码 数据可视化

OpenTiny 2023年度共建者榜单大曝光!!!

OpenTiny社区

开源 前端

软件测试/测试开发/全日制 | Python全栈开发之路:HTML/CSS/JavaScript基础深度学习

测吧(北京)科技有限公司

测试

软件测试/测试开发|什么是Python,我们为什么选择Python?

霍格沃兹测试开发学社

软件测试/测试开发/全日制 | 从前端到后端:Python全栈开发的入门指南

测吧(北京)科技有限公司

测试

2024年区块链行业发展,项目涵盖内容

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

字节跳动 Spark 支持万卡模型推理实践

字节跳动云原生计算

机器学习 spark 云原生

图形工作站有必要么?图形工作站电脑特点

青椒云云电脑

图形工作站 移动图形工作站

软件测试/测试开发/全日制 | 机器学习的原理与应用:算法驱动的智能革命

测吧(北京)科技有限公司

测试

如潮好评!优秀选手视角下的第二届粤港澳大湾区(黄埔)国际算法算例大赛

ModelWhale

人工智能 大数据 算法赛 粤港澳大湾区 算法开发

软件测试/测试开发/全日制 | 深度学习的崛起与在人工智能中的关键作用

测吧(北京)科技有限公司

测试

软件测试/测试开发/全日制 | 自然语言处理技术在人工智能时代的崛起与发展

测吧(北京)科技有限公司

测试

摆脱自研难题,AUI Kit助力企业快速搭建专属互动课堂

阿里云CloudImagine

云计算 视频云

深耕汽车检测设备领域,引领行业技术革新

极客天地

软件测试/测试开发/全日制 | 人工智能的基本概念与发展趋势

测吧(北京)科技有限公司

测试

云桌面有什么技术特点?应用场景是什么?

青椒云云电脑

桌面云 云桌面 云桌面解决方案

移动图形工作站分类、结构和功能

青椒云云电脑

图形工作站

lazada商品列表数据接口(lazada.item_search)丨lazada API接口

tbapi

lazada商品详情数据接口 lazada商品数据接口 lazada API接口 lazada商品列表数据接口

一文解释Linux的内存分页管理

伤感汤姆布利柏

Databend 的算力可扩展性

Databend

16个好用的Code Review工具_文化 & 方法_Guru99_InfoQ精选文章