JetBrains一直致力于提供使开发人员的工作愉快、富有创意和发人深省的工具。JetBrains IDE旨在理解代码并为改进代码提供有价值的建议。在编辑器中提供这些提示非常有用。但是,现代以CI为中心的工作流需要在构建管道中设置可靠的质量门。考虑到这一点,我们创建了Qodana。
Qodana是市场上唯一一个使用JetBrains IDE原生检查的代码质量平台,并将JetBrains IDE的智能扩展到CI服务器。
我们构建了这个强大的静态分析引擎,使开发团队能够在整个企业范围内自动化代码审查、构建质量门和执行代码质量准则——所有这些都在他们的JetBrains生态系统中。该平台可以集成到任何CI/CD管道中,并可以分析用60多种语言编写的代码,包括Java、JavaScript、TypeScript、PHP、Kotlin、Python、Go和C#。
今天,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 IDEA、WebStorm、PhpStorm、PyCharm、Rider和GoLand。请注意,在IDE的2023.2版本发布之前,此功能将不可用。
这种整合将带来两个重要的好处。
第一个好处是易于配置。您只需点击几下即可尝试本地分析,查看整个项目的问题列表,然后在首选CI/CD系统中配置Qodana,以建立质量门并运行服务器端检查。
在IDE中配置Qodana
第二个好处是改进了代码质量的工作流程。在连续集成服务器中配置Qodana后,您将能够看到服务器端分析的结果,而无需离开IDE——开箱即用。或者,您可以直接导航到Qodana Cloud,在简单的sunburst图中查看问题概述。
Qodana检测到的问题概述
#2代码覆盖支持
Qodana现在支持处理Java、Kotlin、PHP、JavaScript和TypeScript的代码覆盖率。在运行自动化测试时,Qodana将根据已知单元测试框架的输出显示执行了多少代码。这样,用户将能够1)审查代码覆盖的程度,2)发现代码中需要更多测试的部分,3)自己评估测试的质量。
Qodana的代码覆盖率检查
#3 Checkmarx提供的漏洞检查器
现在,Qodana与IntelliJ IDEA中使用的相同漏洞检查器捆绑在一起,并由公认的应用程序安全软件测试行业领导者Checkmarx提供支持。该检查旨在发现项目中使用的易受攻击的外部包装。
漏洞检查器不仅仅提供安全信息。它还提供了宝贵的补救见解。开发人员可以立即采取行动,通过快速迁移到安全稳定的软件包版本来解决漏洞,而不会出现已知的漏洞问题。
#4快速修复(实验)
所有Qodana linters(.NET除外)都将为用户提供快速修复功能,以提高他们的编码效率。Qodana现在可以对可以自动解决的问题进行快速修复,并使用所应用的更改创建新的拉取请求(目前仅适用于GitHub Actions)。然后,用户将能够在提交之前查看这些更改。
Qodana快速修复
有关完整的更改列表,请参阅Qodana 2023.2的新增内容。
Qodana在2023.2版本之后的功能
如果您还没有尝试过Qodana,以下是产品中当前可用功能的简要概述——除了最新发布的功能。
2500多项代码检查-包括Qodana独家检查
Qodana可以发现性能问题、未使用的声明、易受攻击的依赖项、潜在的安全问题、令人困惑的代码构造、命名和样式约定等等。
交互式检查报告和仪表板
使用我们精美的sunburst图,发现代码中的问题和趋势,更好地了解项目的质量.
交互式Qodana报告
基于云的报告概述
您可以在一个地方(Qodana Cloud)累积所有Qodana报告,并使用交互式仪表板探索项目趋势。
控制技术债务的基线
代码库或基线的快照是在特定的Qodana运行期间拍摄的。您可以将当前代码与其基线状态进行比较,并查看新的、未更改的和已解决的问题。
例如,您可以使用基线将不太关键的问题放在次要位置,并专注于修复新的或高度关键的错误。
Qodana的基线
第三方许可证审核
扫描代码存储库中的依赖项以查找它们的许可证,并查看它们是否与您的项目许可证兼容。
许可证审核失败的结果
检验建造师
想扫描Qodana还没有涵盖的特定问题吗?您可以将其与第三方检查工具集成,也可以创建自己的插件。
一个视频胜过千言万语,所以请随时查看我们的开发者倡导者Anton Arhipov的Qodana概览视频。
如何开始使用Qodana?
只需前往我们的网站并申请免费试用!您将被要求在Qodana Cloud中创建一个帐户,并将指定的linter连接到您的项目和首选的CI/CD系统。就这么简单!
我们的使命是帮助开发人员交付他们引以为豪的代码。我们希望您喜欢Qodana,以及它在一张简单的日光浴图中所包含的所有智慧。如果您有任何问题,请随时向问题跟踪器提交问题单或在下面留言。