JetBrains一直致力于提供使开发人员的工作愉快、富有创意和发人深省的工具。JetBrains IDE旨在理解代码并为改进代码提供有价值的建议。在编辑器中提供这些提示非常有用。但是,现代以CI为中心的工作流需要在构建管道中设置可靠的质量门。考虑到这一点,我们创建了Qodana 

 

Qodana是市场上唯一一个使用JetBrains IDE原生检查的代码质量平台,并将JetBrains IDE的智能扩展到CI服务器。 

 

我们构建了这个强大的静态分析引擎,使开发团队能够在整个企业范围内自动化代码审查、构建质量门和执行代码质量准则——所有这些都在他们的JetBrains生态系统中。该平台可以集成到任何CI/CD管道中,并可以分析用60多种语言编写的代码,包括JavaJavaScriptTypeScriptPHPKotlinPythonGoC#

 

今天,Qodana宣布了一个巨大的里程碑:它不再是预览版,并在商业上进行了一些重大改进。现在就加入,第一年即可享受50%的折扣。

 


Qodana的新功能2023.2

 

你们中的许多人一直在想Qodana”这个名字是从哪里来的。让我们解释一下。

 

Qodana”代表“代码分析器”。

 

早在2021年,在就产品名称进行了数周徒劳的头脑风暴后,我们向一位精通多种语言的同事寻求指导。十分钟后,她建议“Qodana”,我们马上就知道了。

 

2021年在EAP推出Qodana以来,我们对其反应感到非常高兴。迄今为止,Qodana每月分析超过9000个独特项目的承诺——其中80%是商业项目。

 

我们的早期采用者教会了我们很多关于他们需要什么的知识,我们利用这些知识对Qodana的静态代码分析引擎进行了一些重大改进。 

 

#1 Qodana的服务器端分析现已与JetBrains IDE完全集成2023.2

 

众所周知,静态分析工具的配置非常复杂。随着Qodana 2023.2的发布,我们通过将我们的代码质量平台与几乎所有的JetBrains IDE完全集成,消除了这种痛苦:IntelliJ IDEAWebStormPhpStormPyCharmRiderGoLand。请注意,在IDE2023.2版本发布之前,此功能将不可用。 

 

这种整合将带来两个重要的好处。 

 

第一个好处是易于配置。您只需点击几下即可尝试本地分析,查看整个项目的问题列表,然后在首选CI/CD系统中配置Qodana,以建立质量门并运行服务器端检查。 

 

IDE中配置Qodana

 

第二个好处是改进了代码质量的工作流程。在连续集成服务器中配置Qodana后,您将能够看到服务器端分析的结果,而无需离开IDE——开箱即用。或者,您可以直接导航到Qodana Cloud,在简单的sunburst图中查看问题概述。

 

Qodana检测到的问题概述

 

#2代码覆盖支持

 

Qodana现在支持处理JavaKotlinPHPJavaScriptTypeScript的代码覆盖率。在运行自动化测试时,Qodana将根据已知单元测试框架的输出显示执行了多少代码。这样,用户将能够1)审查代码覆盖的程度,2)发现代码中需要更多测试的部分,3)自己评估测试的质量。



Qodana的代码覆盖率检查

 

#3 Checkmarx提供的漏洞检查器

 

现在,QodanaIntelliJ IDEA中使用的相同漏洞检查器捆绑在一起,并由公认的应用程序安全软件测试行业领导者Checkmarx提供支持。该检查旨在发现项目中使用的易受攻击的外部包装。

 

漏洞检查器不仅仅提供安全信息。它还提供了宝贵的补救见解。开发人员可以立即采取行动,通过快速迁移到安全稳定的软件包版本来解决漏洞,而不会出现已知的漏洞问题。 

 

#4快速修复(实验)

 

所有Qodana linters.NET除外)都将为用户提供快速修复功能,以提高他们的编码效率。Qodana现在可以对可以自动解决的问题进行快速修复,并使用所应用的更改创建新的拉取请求(目前仅适用于GitHub Actions)。然后,用户将能够在提交之前查看这些更改。

 

 

Qodana快速修复

 

有关完整的更改列表,请参阅Qodana 2023.2的新增内容。

 

Qodana2023.2版本之后的功能

 

如果您还没有尝试过Qodana,以下是产品中当前可用功能的简要概述——除了最新发布的功能。 

 

2500多项代码检查-包括Qodana独家检查

 

Qodana可以发现性能问题、未使用的声明、易受攻击的依赖项、潜在的安全问题、令人困惑的代码构造、命名和样式约定等等。

 

交互式检查报告和仪表板

 

使用我们精美的sunburst图,发现代码中的问题和趋势,更好地了解项目的质量

 

 

交互式Qodana报告

 

基于云的报告概述

 

您可以在一个地方(Qodana Cloud)累积所有Qodana报告,并使用交互式仪表板探索项目趋势。

 

控制技术债务的基线

 

代码库或基线的快照是在特定的Qodana运行期间拍摄的。您可以将当前代码与其基线状态进行比较,并查看新的、未更改的和已解决的问题。 

 

例如,您可以使用基线将不太关键的问题放在次要位置,并专注于修复新的或高度关键的错误。


 

Qodana的基线

 

第三方许可证审核

 

扫描代码存储库中的依赖项以查找它们的许可证,并查看它们是否与您的项目许可证兼容。

 

 

许可证审核失败的结果

 

检验建造师

 

想扫描Qodana还没有涵盖的特定问题吗?您可以将其与第三方检查工具集成,也可以创建自己的插件。

 

一个视频胜过千言万语,所以请随时查看我们的开发者倡导者Anton ArhipovQodana概览视频。 

 

如何开始使用Qodana

 

只需前往我们的网站并申请免费试用!您将被要求在Qodana Cloud中创建一个帐户,并将指定的linter连接到您的项目和首选的CI/CD系统。就这么简单!

 

我们的使命是帮助开发人员交付他们引以为豪的代码。我们希望您喜欢Qodana,以及它在一张简单的日光浴图中所包含的所有智慧。如果您有任何问题,请随时向问题跟踪器提交问题单或在下面留言。