检查编码标准违规 -凯发k8网页登录

main content

检查编码标准违规

使用 polyspace®,您可以检查您的 c/c 代码是否违反了 misra c®:2012 规则等编码规则。遵守编码规则可以减少缺陷数量并提高代码质量。

polyspace 可以检测违反以下规则的行为:

  • misra c:2004

  • misra c:2012

  • misra® c

  • jsf av c

  • autosar c 14(仅限 bug finder)

  • cert® c(仅限 bug finder)

  • cert c (仅限 bug finder)

  • iso®/iec ts 17961(仅限 bug finder)

  • 规范(仅限 bug finder)

配置编码规则检查

指定标准和预定义检查项子集

通过 polyspace 分析选项指定编码规则。当您运行 bug finder 时,分析会查找编码违规并运行其他检查。您可以禁用其他检查并仅查找编码违规。

在 polyspace 用户界面中(桌面端产品),相应选项位于 coding standards & code metrics 节点下的 configuration 窗格中。

对于 c 代码,请使用下列选项之一:

  • 对于生成代码,请启用特定于生成代码的选项。

  • 对于生成代码,请启用特定于生成代码的选项。

对于 c 代码,请使用下列选项之一:

您可以指定预定义的规则子集,例如 misra c:2012 的 “mandatory” 子集。这些子集通常由标准定义。

您还可以使用正则表达式定义标识符的命名约定。请参阅。

自定义检查项子集

您还可以根据编码标准自行指定规则子集,而非指定预定义子集。

用户界面(仅限桌面端产品)

  1. 选择编码标准。从规则子集的下拉列表中,选择 “from-file”。点击 edit

  2. checkers selection 窗口中,编码标准将突出显示在左侧窗格中。在右侧窗格中,选择您要在分析中包含的规则。

    • 选择 guidelines > software complexity 检查项时,请审查它们的阈值。如果默认阈值不可接受,请在 threshold 列中指定一个合适的阈值。请参阅。

    • 选择 custom 规则时,请审查规则的 patternconvention。请参阅。

保存规则选择时,配置将保存到一个 xml 文件中,您可以重复使用该文件以进行多个分析。针对所有编码标准选择的规则都包含在这一个文件中。您可以在多个工程中重复使用此文件,以在团队或组织中强制应用通用的编码标准。要在 polyspace 用户界面中的另一个工程中重复使用此文件,请执行以下操作:

  • 在工程配置中选择一个编码标准。从规则子集的下拉列表中,选择 “from-file”。

  • 点击 edit 并浏览到文件位置。或者,输入文件名作为 选项的参数。

命令行.  使用 polyspace 桌面端产品,您可以在用户界面中创建一个编码标准 xml 文件,然后使用此文件进行命令行分析。请使用 选项提供此 xml 文件。

使用 polyspace server 产品时,您必须从头开始创建编码标准 xml。根据您要启用的标准,为 polyspaceserverroot\help\toolbox\bugfinder\examples\coding_standards_xml 中的某个文件创建一个可写副本,并使用该 xml 文件中的条目关闭规则(模板中启用了对应标准的所有规则)。其中,polyspaceserverroot 是 polyspace server 产品的根安装文件夹,例如 c:\program files\polyspace server\r2022b

例如,要关闭 misra c:2012 规则 8.1,请在文件 misra_c_2012_rules.xml 的副本中使用以下条目:


  ...
  
... ...
...

使用规范检查项时,请在 threshold 标记之间指定它们的阈值。例如,要激活 检查项,并将该检查项的阈值设置为 5,请在 guidelines.xml 的副本中使用以下条目:


        5

要在 bug finder 中使用此 xml 文件进行 misra c:2012 分析,请输入以下命令:

polyspace-bug-finder -sources filename -misra3 from-file -checkers-selection-file misra_c_2012_rules.xml

有关规则 id 和节名称的完整列表,请参阅:

注意

检查项配置文件的 xml 格式可能会在以后的版本中有所变化。

仅检查编码标准

bug finder 分析会检查 c/c 代码是否:

  • 存在一组默认的缺陷 (bug)

  • 遵守您指定的任何编码标准。

要仅检查编码标准,请完全禁用缺陷检查。为 选项指定 “none”。

审查编码违规

分析完成后,您可以在 results list 窗格中查看编码标准违规。选择某个违规可在 result details 窗格中查看更多详细信息,还可在 source 窗格中查看源代码。

编码标准违规在源代码中用 图标指示。

有关进一步的步骤,请参阅或。

生成报告

您可以使用针对编码标准明确定义的模板生成报告。请使用 “codingstandards” 模板。此模板:

  • 仅报告分析结果中的编码标准违规,并忽略其他类型的结果,例如缺陷、运行时错误或代码度量。

  • 在报告中为每个编码标准创建单独的章节,这些章节将概述并列出违反该标准的所有违规项。

要指定报告模板,请使用 选项。

相关主题

网站地图