Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置


Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置

文章插图
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置
在此文章中,我将与您分享一些有关为Visual Studio Code编辑器配置和使用我们全新的C/C++test静态分析扩展的提示 。
Visual Studio Code(VS Code)编辑器的普及正在迅速增长 。在最新的Stack Overflow年度开发人员年度调查中,VS Code占据了开发环境和工具类别 。
它快速、简单、可自定义、可扩展,并且可以在三个领先的开发平台上运行:windows,linux和mac 。它的受欢迎程度不仅限于使用JAVAScript或TypeScript开发的团队 。我们经常看到它被用于开发安全关键的C/C++软件 。
VS Code得到了市场上广泛的扩展生态系统的支持 。但是,C/C++静态分析的扩展数量有限 。
在4月2020.1版Parasoft C/C++test发布之前,没有什么可以帮助您遵守MISRA,CERT和AUTOSAR C++编码标准的,而无需离开编辑器检查结果 。我的意思是,完整的标准支持Clang-Tidy很酷,但仅涵盖了这些标准的一小部分 。
我们决定填补这一空白,并为这个出色的编辑器提供扩展,以帮助您根据自己喜欢的编码标准检查您刚刚编写的代码,查看结果并修复或隐藏它们——所有这些均在VS Code内部 。
在本文中,我将重点介绍C/C++的静态分析,但我们还支持带有Parasoft dotTEST静态分析扩展功能的C# 。
如何开始使用VS Code的C/C++test使用Visual Studio Code编辑器的Parasoft静态分析扩展来启动和运行的最简单方法是通过Microsoft Marketplace 。
启动VS Code,然后转到扩展程序(Ctrl + Shift + X) 。在搜索字段中,键入“C++test”并安装扩展 。
安装后,扩展程序将通过以下消息欢迎您:
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置

文章插图
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置
【Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置】该消息告知,为了运行带有VS Code扩展名的静态分析,您需要下载C/C++test Standard,这是C/C++test Visual Studio使用的命令行静态分析引擎 。代码扩展 。
下载C/C++test Standard发行版后,只需将其解压缩到您喜欢的任何目录中,然后安装试用(或完整)许可证 。您的许可证需要包含命令行功能 。您可以通过编辑分发主目录中的cpptestcli.properties文件来安装许可证,或将cpptestcli.properties文件放在您的主目录中,然后在其中放置许可信息 。
对于此处的实验,我们使用C/C++test附带的Timer示例项目 。在VS Code中,切换到Explorer,然后使用“将文件夹添加到工作区...”将<C/C++test install dir>/examples/Timer文件夹添加到您的工作区 。
要执行扩展的简单配置,请在状态栏中单击C/C++test快速入门:
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置

文章插图
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置
您会看到以下配置选项:
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置

文章插图
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置
设置如下:
  • 选择C/C++test安装:指向解压缩C/C++test Standard的位置 。
  • 选择编译器配置:如果您使用的是GCC 9.2,则选择与您的项目所使用的最接近的编译器,例如“GNU GCC 9.x (x86_64)” 。
  • 选择测试配置:定义将使用哪些静态分析检查器来扫描您的项目 。让我们保持默认设置 。
对于您的实际项目,您可能需要配置其他设置才能开始使用静态分析 。我们稍后再讨论 。现在,已经进行了这些设置,请在资源管理器中选择Timer文件夹 。
从上下文菜单中,选择“C/C++test:分析所选文件…” 。OUTPUT面板将开始显示有关静态分析后续步骤的信息 。
分析完成后,“PROBLEMS”问题面板将显示静态分析报告的所有结果 。它应如下所示:
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置

文章插图
Visual Studio代码扩展入门:用于C/C++静态分析的VS Code配置
您可以通过单击“问题”面板中的行来分析发现 。当您选择一个发现时,C/C++test扩展将带您到源代码,您可以在其中查看报告问题的原因 。
如果原因尚不清楚,请在“问题”面板中右键单击结果,然后选择“显示<静态分析规则>的文档” 。它将向您显示详细说明 。
如果您希望忽略发现,请右键单击并选择“禁止违反<rule>” 。此操作将在源文件中添加特殊注释,这将阻止分析器将来报告此发现 。


推荐阅读