QAC的CLI 转载文章

2.静态分析执行

为了方便后续将鸿蒙的静态分析过程部署到持续集成平台上,本文以命令行的方式进行静态分析操作的演示。具体步骤如下:

  • 创建QAC工程,命令如下:

qacli admin --qaf-project-config --qaf-project . --cct "/home/zhou/.config/Perforce/Helix-QAC-2021.1/config/cct/GNU_GCC-riscv32-unknown-elf-gcc_7.3.0-riscv32-unknown-elf-C-c99.cct" --acf "/home/zhou/.config/Perforce/Helix-QAC-2021.1/config/acf/HMOS.acf" --rcf "/home/zhou/.config/Perforce/Helix-QAC-2021.1/config/rcf/HMOS.rcf"

为了更全面地了解鸿蒙系统的代码质量,本文在QAC工程的分析配置文件HMOS.acf中添加了MISRA C 2012合规模块、CERT C合规模块及CWE C合规模块。

  • MISRA C 2012:为开发安全关键系统提供编码标准,广泛应用于汽车软件开发。

  • CERT :信息安全编码标准,能确保您的软件免受潜在的软件安全漏洞的侵害。

  • CWE C:常见弱点枚举(CWE)列表标识了软件和硬件中的软件安全弱点。

  • 过滤鸿蒙中包含的第三方源码,命令如下:

qacli pprops -P . --sync-setting FILE_FILTER  --set "/home/zhou/Downloads/openHarmony/third_party"

通过该命令,我们可以将鸿蒙工程中包含的第三方源码从QAC工程中过滤出去,这样我们可以更好地通过QAC的分析结果衡量鸿蒙源码的代码质量。

  • 将wifiiot_hispark_pegasus工程源码加载到QAC工程中,具体命令如下:

qacli sync -P . -t MONITOR "cd /home/zhou/Downloads/openHarmony&&hb clean&&hb build"

该命令是通过监测wifiiot_hispark_pegasus工程的编译过程,自动将编译过程中调用的源文件和头文件添加到QAC工程中。

  • 执行QAC分析,具体命令如下:

qacli analyze -P . -cf

  • 生成合规报告:

qacli report -P . -t RCR

  • 将分析结果上传到QAC的网页端,方便查看,命令如下:

qacli upload -P . --qav-upload --upload-project HMOS --snapshot-name v1.0 --upload-source ALL -U https://192.168.9.126:8081/ --username admin --password admin

静态分析结果分析

模块wifiiot_hispark_pegasus的总体合规情况如下:

QAC共计报出107618条诊断消息,共计违反规则290264次,违反的规则数目为302条(包含MISRA C、CERT C和CWE C),符合的规则有216条,由于模块的文件合规率高达94.19%,但是工程合规率却只有41.70%,所以可以看出违反规则的情况集中在少部分源文件中。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: Helix QAC是一种代码质量分析工具,它的手册提供了对该工具的详细说明和使用指南。 Helix QAC手册主要包含以下内容: 1. 工具介绍:手册首先会对Helix QAC进行简要介绍,包括该工具的目的、功能特点以及适用范围。 2. 安装和配置:手册会详细介绍如何正确安装和配置Helix QAC,包括软件依赖、环境要求以及安装步骤。此外,还会介绍如何选择适合自己项目的配置选项。 3. 使用指南:手册会逐步介绍如何使用Helix QAC进行静态代码分析,包括如何将代码导入工具、如何选择适当的分析规则以及如何运行分析。此外,手册还会对工具输出结果的含义和解读进行解释,以方便开发人员理解和改善代码质量。 4. 故障排除:当在使用Helix QAC过程中遇到问题时,手册会给出一些常见问题和解决方案,帮助用户快速解决故障。 5. 进阶功能:对于一些高级功能或者特殊需求,手册会提供相应的进阶指导,帮助用户更加充分地利用Helix QAC的功能。 Helix QAC手册是开发人员在使用该工具时的重要参考资料。通过学习和理解手册中的内容,开发人员可以更加高效地使用Helix QAC进行代码质量分析,提升软件的质量和可靠性。 ### 回答2: Helix QAC手册是一份软件质量分析工具的使用指南。它详细介绍了Helix QAC的功能、特点和使用方法。 首先,手册会介绍Helix QAC的工作原理。Helix QAC是一种静态代码分析工具,能够通过扫描源代码来检测和修复潜在的编程错误。它可以帮助开发人员在编写代码的过程中提前发现并解决一些常见的编程问题,比如未初始化的变量、空指针引用和不可达代码等等。 手册还会逐一介绍Helix QAC的各项功能。例如,它可以为代码提供自动化的规则检查,包括编码标准的合规性、代码复杂度和安全性等方面。同时,Helix QAC也支持自定义规则,根据项目的特殊需求进行定制化配置。 此外,手册还会对Helix QAC的报告功能进行详细讲解。Helix QAC能够生成详细的静态代码分析报告,其中包含了代码中存在的问题、修复建议以及代码质量评分等信息。开发人员可以根据报告中的提示来进行代码的修改和优化,提高代码质量和可维护性。 最后,手册还会提供一些常见问题的解答和使用技巧。开发人员可以通过阅读手册,更好地了解如何正确使用Helix QAC,并在实际开发中利用其强大的功能来提高代码质量。 总的来说,Helix QAC手册是一本详细的用户指南,能够帮助开发人员充分了解和使用Helix QAC,提高软件质量和开发效率。 ### 回答3: Helix QAC手册是一份关于软件质量控制工具Helix QAC的说明书。Helix QAC是通过对源代码进行静态分析来帮助开发人员发现和修复潜在的编程错误和代码规范问题的工具。该手册的目的是向用户提供关于Helix QAC的详细信息,包括使用方法、功能特点和设置选项等。 首先,手册会介绍Helix QAC的安装和配置过程,包括不同平台的安装步骤和系统要求。然后,手册会逐步指导用户如何开始使用Helix QAC,包括创建和设置项目、导入源代码以及运行静态分析。 接下来,手册会详细介绍Helix QAC的功能特点,例如其能够检测的编程错误类型、支持的编程语言以及自定义规则的创建方法。对于每个功能,手册会提供实际示例和详细说明,以帮助用户充分理解和应用。 此外,手册还会介绍Helix QAC中的一些高级功能和选项,例如与集成开发环境(IDE)的集成、代码风格配置和结果报告生成。对于开发团队来说,手册也会提供关于如何在多人协作中使用Helix QAC的建议和最佳实践。 最后,手册会给出常见问题解答和故障排除的答案,以帮助用户解决在使用过程中可能遇到的一些常见问题。 总体而言,Helix QAC手册是一份详尽的说明文档,旨在帮助用户充分了解和有效使用Helix QAC,以提高软件质量和开发效率。无论是初学者还是有经验的用户,都能从中获得宝贵的帮助和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值