当前位置:网站首页>隆重推出 Qodana:您最爱的 CI 的代码质量平台
隆重推出 Qodana:您最爱的 CI 的代码质量平台
2022-06-28 15:11:00 【JetBrains中国】

在编译或运行项目后发现代码问题是所有开发者都会遇到的情况。 如果出现的是像风格错误这种并不严重的问题,那么并不需要急于修正。 但是,当出现了严重错误,可能会影响到您的业务服务以及延误您的开发工作流时,事态可能就会变得十分棘手。 这对于人员众多的大型开发团队而言尤为如此。 您需要随时确保整个项目的质量,以免为时已晚。
我们很高兴地宣布,
有一种简单的方式可以满足这一需求 ——
隆重推出 Qodana!
它是一个代码质量平台,
可以帮助您简化质量保证流程,
确保项目的完整性,
并保持高度的代码可维护性。




扫码了解有关 Qodana 功能的更多信息
它可以在您选择的 CI/CD 管道中设置质量门,以确保您项目中的任何编码问题都无处遁形,避免对后续开发工作造成影响。 使用 Qodana,您可以随时查看项目及其质量各方面内容的实时概览,掌握包括质量目标及其当前达成进度在内的各项信息 —— 一切触手可及。
您可以委托给 Qodana 的任务
Qodana 包含命令行工具 (linter),可以在本地或任何 CI 内提供项目分析。 这使开发者可以轻松检查他们的项目是否存在代码问题。 更重要的是,它还使团队能够将代码质量保证作为其开发流程的一部分。 我们来详细了解 Qodana 能够如何帮助您和您的团队:
尽早发现代码问题。您可以在代码被实际推送到生产环境之前解决问题。 较晚发现问题会造成更高昂的修正成本。
检测异常代码。以不符合项目一贯风格的方式编写的代码段可能会给项目带来安全风险。
自动代码审查。可自动执行多重检查,包括针对未使用的 import、重复、拼写问题和格式问题的检查,从而缩短您在反馈循环中耗费的时间。
消除死代码。这将避免执行无关运算,从而缩短程序的运行时间。
降低合规风险。借助 Qodana 的许可证审核,您可以跟踪项目所依赖的依赖项。 这样做可以帮助您的业务始终符合许可要求。
改进您的代码结构。它将帮助您保持代码的可读性和高度可维护性。 使用 Qodana,您可以确保您的代码在缩进、命名方案、行长限制等方面始终保持一致。
引入编码最佳做法。根据您的项目或业务要求,您可以确保您的代码符合您的自定义代码策略,例如代码遵循一定的编程风格指南。
主要功能
项目实时概览
运行分析时,Qodana 会以旭日图的形式显示结果,其中带有各种可供点击的选项卡以便深入研究。 每次点击选项卡时,图表下方的结果都会实时更新。 作为深入研究流程的一部分,您还可以通过在旭日图旁边的菜单中设置筛选器来微调结果。 您甚至可以根据自己的喜好重新排列图中的选项卡,并保存特定的筛选器配置以供将来使用。

富有使用价值的代码问题
旭日图下方的 Problems(问题)选项卡提供了包含检测到的所有问题的列表,并按严重性、文件名、路径、类别和类型对问题进行排序。 当您发现想要更深入研究的特定问题时,只需点击该问题即可。 这将展开代码段并显示一些上下文。
在这里,您可以选择将问题移动至技术债务列表(Move to Technical Debt(移至技术债务)按钮)或在您的 IDE 中打开文件。
More actions(更多操作)下拉菜单可用于执行各种操作,例如在未来分析中排除某个路径、文件或整个目录,隐藏特定类型或类别,或者报告您认为某段代码被错误标记的情况。

从 Problems(问题)选项卡切换到 Files(文件)选项卡,即可改为以文件 / 文件夹结构浏览相同的问题。

与 JetBrains IDE 的集成
IntelliJ IDEA Ultimate 和 PhpStorm 均已捆绑 Qodana,因此当 Qodana 提示代码问题时,您可以直接在您的 IDE 中将其打开以进行快速修复。 为此,请选择一个问题并点击 Open file in(文件打开位置)操作。 要将 Qodana 与其他 JetBrains IDE 集成,请安装我们的插件:https://plugins.jetbrains.com/plugin/16938-qodana

许可证审核
如果代码中的许可证无效或使用不当,可能会导致非常昂贵的法律与合规处罚。 使用 Qodana,您可以扫描代码仓库中的依赖项以查找其许可证并查看是否存在任何潜在问题。
您可以轻松地将许可证审核引入项目并使之融入 CI/CD 管道。 新的许可证审核功能适用于所有 linter,包括 Java、Kotlin、PHP、Python 和 JavaScript。

与 GitHub 和其他 CI/CD 工具
的集成
您可以将该平台与 GitHub 集成,并用于检测、分析和解决其中的代码问题。 安装 Qodana Scan GitHub action 以针对 GitHub 工作流中使用 Java、Kotlin、PHP、Python、JavaScript 和 TypeScript 的项目运行质量保证检查:https://github.com/marketplace/actions/qodana-scan
有关一小部分基本用例的简要总结,请参阅我们的文档:https://www.jetbrains.com/help/qodana/qodana-github-action.html
您不必局限于 GitHub!Qodana 可以添加到您青睐的任何 CI 平台。为您的项目建立质量里程碑的过程在所有 CI 工具间都非常相似。 自 Qodana 发布以来,我们已经支持 GitHub、GitLab CI/CD、TeamCity、Jenkins 和 Azure Pipelines。
查看 Qodana 的实际运作
如果您想要亲身体验,我们提供了一个沙盒供您实验。 以访客身份登录并从中选择一个预配置项目:http://qodana.teamcity.com/
有关 Qodana 及其能够为您的 CI 管道带来哪些好处的更多信息:
访问我们的网站:
https://www.jetbrains.com.cn/qodana/
探索我们的文档:
https://www.jetbrains.com/help/qodana/welcome.html
查阅我们的博客:
http://blog.jetbrains.com/qodana
如果您对 Qodana 有任何疑问或建议,请给我们的公众号留言,或发送电子邮件至 [email protected] 与我们联系。
本博文英文原作者:Anastasia Khramushina

相关阅读


戳「阅读原文」了解有关 Qodana 功能的更多信息
本文分享自微信公众号 - JetBrains(JetBrainsChina)。
如有侵权,请联系 [email protected] 删除。
本文参与 “OSC 源创计划”,欢迎正在阅读的你也加入,一起分享。
边栏推荐
- Cross cluster deployment of helm applications using karmada
- What are the benefits of this PMP certificate?
- Construction and management practice of ByteDance buried point data flow
- Summary of technical difficulties of wearable neural signal and behavior data detection and recording system for birds in flight
- Facebook出手!自适应梯度打败人工调参
- [C language] implementation of binary tree and three Traversals
- 币圈大地震:去年赚100万,今年亏500万
- Setsql function and risk of using lamdbaupdatewrapper
- Is PMP really useful?
- Softing epGate PB系列网关-可将PROFIBUS总线集成到EtherNet/IP网络
猜你喜欢

Jackie Chan and fast brand, who is the Savior of Kwai?

抽奖动画 - 鲤鱼跳龙门

第四大运营商,难成「鲶鱼」
DBMS in Oracle_ output. put_ Line output problem solving process
![[MySQL learning notes 23] index optimization](/img/08/644fddf2521b47de41dff99ebaad56.png)
[MySQL learning notes 23] index optimization

MIPS汇编语言学习-02-逻辑判断-前台输入

Leetcode 48. Rotate image (yes, resolved)

The boss told me three times: low key, low key, low key

Softing epGate PB系列网关-可将PROFIBUS总线集成到EtherNet/IP网络

厨卫电器行业S2B2C系统网站解决方案:打造S2B2C平台全渠道商业系统
随机推荐
不要使用短路逻辑编写 stl sorter 多条件比较
华为能成“口红一哥”,或者“带货女王”吗?
Leike defense: 4D millimeter wave radar products are expected to be mass produced and supplied by the end of the year
动力电池,是这样被“瓜分”的
成龙和快品牌,谁才是快手的救星?
R语言ggplot2可视化:使用patchwork包将3个ggplot2可视化结果自定义组合起来构成组合图、两个子图横向组合后和另外一个图纵向组合构成最终组合图
Leetcode 48. Rotate image (yes, resolved)
MySQL主从切换的超详细步骤
Functools: high order functions and operations on callable objects (continuous updating ing...)
化学制品制造业智慧供应商管理系统深度挖掘供应商管理领域,提升供应链协同
ROS知识点——使用VScode搭建ROS开发环境
ROS21讲
WSUS客户端访问服务端异常报错-0x8024401f「建议收藏」
R language ggplot2 visualization: the patchwork package is used to customize and combine the three ggplot2 visualization results to form a composite graph. After the horizontal combination of two sub
浪擎与浪潮,一个从OEM到价值共生的生态样板
张同学还没学会当主播
[spatial & single cellomics] phase 1: Study on PDAC tumor microenvironment by single cell binding spatial transcriptome
R语言ggplot2可视化:使用patchwork包(直接使用加号+)将一个ggplot2可视化结果和一个plot函数可视化结果横向组合起来形成最终结果图、将两个可视的组合结果对齐
BatchNorm2d原理、作用及其pytorch中BatchNorm2d函数的参数讲解
Q-tester 3.2: applicable to development, production and after-sales diagnostic test software