【回眸】QAC软件指南 |
您所在的位置:网站首页 › 如新使用 › 【回眸】QAC软件指南 |
前言
真没想到用的这个QAC版本这么古老,看到这个UI秒回18年前 安装这个不加赘述,去公众号找资源或者公司有正版软件就使用正版软件。 QAC软件结构(仅作了解)prqaproject.xml :文件保存工程相关信息 config :包含工程各配置文件,如 cct 、 acf 、 rcf 等。 output 按照代码层次创建文件夹,保存分析后输出文件。 reports :保存生成的报告文件 src\lib…:相关代码文件夹,可手动或通过同步导入(保持其结构) 验证License这个需要在创建工程之前验证License是否可用,否则就算导入文件成功也没法分析,如果是 创建工程Project--->Create New Project 在新对话框内进行工程基本信息的填写 注意这里Compiler Setting 这里需要选择C语言或者C++,或者两者都选择,取决于测试的项目所使用的语言。 1、Project Name 栏通过右侧按钮选择工程根目录,以根目录名作为工程名。通过右侧按钮 选择工程根目录,以根目录名作为工程名 选好目录后可以进行修改,修改后重新创建工程 目录。 2、根据工程需要在下拉菜单选择配置文件。 (初始选择 default.acf 和default .en_US.rcf 即可) 3、点击 Next 进行相应编译器的选择 ,先选择 C ,在选择 C ++,如果只用 是 C 或者只 是 C++ 的代码 ,则另外一种 cct 可以 任意选择。 建议选择与实际编译器匹配或接近的 cct 文件,没有匹配的编译器时选择Helix_Generic_C 或 Helix_Generic_C++ 。 4、设置完毕后,点击 Finish 则可在弹出的窗口进行工程详细设定。 添加代码手动添加代码可选择添加单一文件,或添加文件夹。右键选中文件夹,点击Add File(s),选中源代码所在路径。 工程配置点击 Project --> Project Properties ,打开工程属性页面。 1、 Analysis 用于分析配置。从 Component Option 中选 择配置选项,在对应 Argument 窗口(界面右下角)中进行对应 设置。如选择 i 、 d 等 参数含义-d必要的宏定义添加-i添加必要的头文件路径-quite抑制无影响的头文件输出-max errors制定最大错误数-threshold度量元检测值设定eg:STCYC>10-warncall调用函数设置警告eg:open =6001选中Analysis栏,点击qac 9.9.0,点击 -i或者 -d 双击右侧空白处可用添加 这里比较常用的是 -d 和-i,分别是添加路径和宏定义,QAC分析出的错误主要和这几个相关。 Rule Configuration 用于消息设定 在 Rule Configuration 可查看变更 Message 以及规则组。 在这里可以右键不需要的规则disable掉,如果需要 添加其他组件可以按这个方法添加m3cm 2.5.0 Rule Configuration 界面配置 m3cm 规则集 与之前一样,选save和close之后即可设置成功。 执行分析方式一: 通过菜单栏 Analysis -->File Based Analysis ,选择 对当前工程、所选文件或 勾选指定文件进行静态分析。 方式二:也可以点击图标进行分析 方式三: 可在工程文件列表中,选择相应文件夹 文件,右键 Analyse selected files 对其进行分析。 分析结果查看分析完毕后就来到这个界面,下方有个小滑块,可以拖动小滑块过滤出0-9级的错误 违反消息处有叹号标记 Analysis Results/Diagnostics中罗列当前选中文件中违反的消息信息。点击具体 ID 查看 Message 帮助文件,点击 Rule ,查看规则详细信息,双击消息内容,在 代码中高亮显示违反部分代码。可以通过窗口上方叹号标记筛选显示不同级别消息。筛选同时作用于 源代码上的标记。 红色标记Error message 黄色标记Warning message 绿色标记User message 蓝色标记Information message ② 悬浮窗可查看每个违反消息的帮助文档 ③ 消息索引 可以选择不同分类:比如——Files 、 Rule Groups 、 Message Levels 生成报告点击菜单 Report ,选择生成工程或单独文件的报告。 可生成 5 种相关报告: 1、 Code Review Report :生成 html 类型文件,显示文件相关度量结果和分析状态(未被抑制的违反规则数) 2、 Metrics Data Report :点击生成 Metrics Data Report ,将生成 xml 文件,存储相关度 量指标数据。 3、Rule Compliance Report :生成 html 类型文件,显示文件详细的违反规则数。 4、Suppression Report :生成 xml 文件,显示被抑制的消息信息。 5、HIS Metrics Report :生成 html 文件,显示 HIS 度量报告。 常见错误排查以下是几种常见的9 级错误以及修改思路 切记:所有 的 9 级错误( error )均属于 QAC 的配置问题或本身语法错误,因此该级别 错误不可忽略,必须修正! 1) 缺少必要的头文件。这是在出现的 9 级错误中,首要考虑修正的问题。而且有可能是引 发 0434 消息的根源 错误形式: 修改方式: 通过配置头文件路径,可以使 QAC 在指定路径下搜索到相关文件 2) 关键字不识别 。 不同编译器有不同的扩展关键字,该部分不会影响 QAC 分析,可以通过 宏定义忽略 错误形式: 修改方式: 通过宏定义忽略 最简单的是“ IDENT=IDENT=”,可实现忽略当前 IDENT 标识符的 作用。 除此以外,宏 设置方式还有如下:使用 IDENT=_ignore 的方式,来忽略IDENT 后面的字符。 数据类型不识别 。 有些数据类型的实现并非通过引用头文件实现,而是编译器内部实现, 这种情况下, 需要 将其手动定义 为匹配的基本类型 修改方式:将非标准数据类型 手动定义 为匹配的基本类型,如 unsigned char 、 short 、int 等 4) #error 错误。 #error 命令是 C/C++ 语言的预处理命令之一,当 预处理器预处理到 #error 命令时将停止编译并输出用户自定义的错误消息。 QAC 分析中, error 报错一般是因为 编译器配置问题导致,我们需要根据当前代码开发环境对工程进行相应配置 错误形式: 修改方式:编译器的库文件中包含众多编译开关如,因此需要在 QAC 中将编译开关涉及 到的宏进行添加,让其进入正确分支,而非错误的“ “#else ”分支 5)QAC 默认设置( size_t/wchar_t/ptrdiff_t )与程序实现不一致 错误形式: 修改方式:在 QAC 中重新设置定义,使其与程序实现保持一致 后记后续如果有更新部分会继续放在这篇博文里,前面的分析和Tessy相比有些小巫见大巫了,但QAC的九级错误还是同样令人抓狂不止。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |