6 月 28 日消息,在编译或运行项目后发现代码问题是所有开发者都会遇到的情况。 如果出现的是像风格错误这种并不严重的问题,那么并不需要急于修正。 但是,当出现了严重错误,可能会影响到你的业务服务以及延误你的开发工作流时,事态可能就会变得十分棘手。 这对于人员众多的大型开发团队而言尤为如此。 你需要随时确保整个项目的质量,以免为时已晚。
JetBrains 宣布,有一种简单的方式可以满足这一需求 —— 正式推出 Qodana!它是一个代码质量平台,可以帮助你简化质量保证流程,确保项目的完整性,并保持高度的代码可维护性。
下面是 JetBrains 博客内容:
它可以在你选择的 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/