当前位置:首页 / 最新动态 / 技术论坛
QAC:创建基于度量指标的诊断消息

点击:157  发布日期:2026/7/27 16:04:12

问题描述:

客户想要基于度量指标来创建诊断消息


参考建议:

QAC支持创建基于度量指标的诊断消息(指标阈值)。

相关的设置选项可以在分析组件“qac”、“qacpp”、“rcma”中找到

选项名称:“-threshold”,“-thresh”


 

关于设置基于度量指标的诊断消息的具体信息,可在相关的QAC组件文档找到参考,如对于C语言,有分析组件Perforce QAC for C(qac)。


参考文档路径:

"C:\Perforce\QAC-2026.1\components\qac-12.4.0\doc-en_US\Default.html"


参考章节:

“Metric Thresholds”



操作示例:设置基于圈复杂度度量指标的诊断消息


这里以STCYC(圈复杂度)为例,在QAC示例项目中演示(“sample_inspect_c”)。
进入QAC项目后,打开项目属性,找到“Analysis”标签


找到QAC组件,然后在项目设定中找到“-threshold”项(注意需要先勾选“Advanced”选框)。找到后点击该选项,并在右侧的“User Arguments”处根据要求编写规则,完成后保存更改。


(如下图中的规则:圈复杂度大于等于8时发出诊断消息,使用默认消息ID4700


完成后再次分析,如存在违反,在未指定消息ID时,默认的消息ID为“4700“,效果如下:


如果你创建了一条专门用于标记“圈复杂度大于8”的自定义诊断消息,可以修改之前的指标阈值设置,将这个阈值设置与自己自定义的诊断消息关联,使其被分配到一条专有的QAC Message 上,方便单独统计。(如:将“STCYC>=8“更改为”STCYC>=8:6001)

保存变更后再次分析,得到的结果如下,可以看到该项目中发现的函数圈复杂度超过8的情况被单独列出来了:





Copyright © 2023 汉宜电子科技(上海)有限公司 All Rights Reserved 沪ICP备2023002859号-1

请问,您对哪个产品感兴趣?