主要内容

在适用于 Eclipse 的 Polyspace as You Code 中运行分析并审查结果

在配置 Polyspace as You Code 插件后,您便可以运行分析并对任意检查结果进行修复或申述了。在继续使用本指南之前,请确认您已将文件 example.hppexample_source.cpp 添加到质量监控列表中。

Eclipse 中运行 Polyspace as You Code 分析

您可以通过以下方式运行分析:

  • 如果您选择保存时开始分析,请保存您编辑的文件以运行分析。

  • 在打开文件的情况下,在文件编辑器中右键点击并选择运行 Polyspace 分析

  • 手动将您的文件添加到质量监控列表,点击质量监控窗格中的“运行 Polyspace 分析”按钮 run polyspace analysis icon 来分析您的文件。

Polyspace® 仅分析属于 Eclipse™ 工作区的文件。要将文件添加到工作区,请将其添加到该工作区内的工程中。即使将不在该工作区中的文件添加到质量监控列表中,也不会对其进行分析。如果您分析的文件包含不在该工作区中的文件,那么 Polyspace as You Code 分析会运行,但不会报告这个所包含文件的任何检查结果。

 手动运行分析

查看、修复检查结果或对其进行申述

在 Polyspace 运行分析后,如果不存在检查结果,则质量监控窗格中的文件名以绿色显示,如果存在检查结果,则文件名以红色显示。文件名右侧的数字指示检查结果的数量。

Polyspace 问题窗格中查看您的检查结果列表,当您在 Eclipse 中打开 Polyspace as You Code 透视时,该窗格默认处于打开状态。如果 Polyspace 问题窗格未打开,请点击窗口 > 透视 > 重置透视来重置透视。

使用 Polyspace 问题窗格中的过滤器来搜索特定检查结果。每个检查结果都包含一个文件名和行号,以指示该检查结果在您的代码中的位置。

对示例代码运行分析后:

  1. Polyspace 问题窗格中打开结果。

  2. 点击过滤器图标 eclipse filter icon 并创建一个新的过滤器以搜索文本 A16-2-3。在第五行有一个结果。

    Polyspace Porblems pane with A16-2-3 filter enabled

  3. 点击 Polyspace 问题窗格中的检查结果以打开包含相应检查结果的文件。

    每个检查结果在文件中都以红色突出显示。点击突出显示的代码部分,以在结果详细信息窗格中查看与问题关联的各个检查结果的列表。

  4. 在示例代码中,在第二行中添加以下 #include 语句:

    #include <cstdint>

  5. 保存此更改并运行另一个分析。第五行的 A16-2-3 错误不再存在。

如果设置自动分析,您可以在代码编写过程中发现并修复检查结果。每次您保存更改时,Polyspace 分析都会在后台启动,并在列表中显示各项新的检查结果或删除已修复的检查结果。

 查看和修复检查结果

对各个检查结果进行申述

您可以从 Polyspace 问题窗格或从代码中检查结果的位置对检查结果进行申述。

右键点击 Polyspace 问题窗格中的检查结果并选择 Polyspace。从菜单中选择适当的申述。这将向您的代码中添加一条注释,您可以修订该注释。添加申述会从 Polyspace 问题窗格中删除该检查结果。要再次显示检查结果,请删除申述注释并执行分析。

 对检查结果进行申述

提供申述目录

您可以将预定义申述目录添加到 Polyspace as You Code 中。使用申述目录,您可以选择预先编写的申述,而无需手动输入每个申述注释。该目录必须采用 JSON 格式。如果您还没有申述目录,请使用以下示例 JSON 文件。

example_catalog.json

{
	"justifications": [
		{
		"family": "Defect",
		"acronym": "INT_ZERO_DIV",
		"comment": "This is my justification for division"
		},
		{
		"family": "Defect",
		"acronym": "INT_ZERO_DIV",
		"comment": "Alternative justification for division"
		}
	]
}

打开 Eclipse 预设项并选择 Polyspace as You Code。在申述目录文本框旁边,点击浏览并导航到您的申述目录。

 提供申述目录

查看头文件检查结果

在分析源文件时,您会在 Polyspace 问题窗格中看到任何头文件检查结果。如果某个头文件包含任何检查结果,则该检查结果会在质量监控列表中的源文件旁边以红色 H 标出。

双击 Polyspace 问题窗格中的某个头文件检查结果以转至包含该检查结果的头文件。导致头文件检查结果的源文件分析在 Polyspace 问题窗格的头文件列中列出。

 查看头文件检查结果