Parasoft C/C++test如何在ARM DS-5环境中进行测试(上) - 实践

基于ARM架构的安全关键领域,代码的可靠性与稳定性至关重要。Parasoft C/C++test作为一款强大的自动化代码测试工具,集成了静态分析、单元测试等多种测试技术,能够协助开发者在开发早期持续地发现代码中的缺陷与漏洞。下面将聚焦于如何将Parasoft C/C++test无缝集成到ARM DS-5这一专业的开发环境中,并详细说明从环境搭建到成功执行静态分析的完整流程,为构建高可信度的ARM嵌入式软件奠定坚实基础。就是在嵌入式研发,尤其

一、安装

RVDS的升级版,并不完全相同)就是ARM 的DS-5 IDE是基于Eclipse的开发环境,C++Test提供对于Eclipse环境的插件包,将C++Test与DS-5安装在一个IDE中可以避免设置环境变量等比较麻烦的事情。(DS-5

安装方式很简单,打开C++Test插件版,选择DS-5,选择DS-5中的Eclipse根目录(注意,安装的时候需要关闭DS-5环境),然后启动即可

二、项目初始化

由于是将C++Test集成到DS-5 IDE中,因此不得进行项目导入的工作。可是需要对于项目做配置让C++Test可能识别。

生成BDF文件

DS-5的项目都是基于Makefile的项目,因此可能通过cpptesttrace 命令来跟踪构建生成BDF文件。如下方案:

在DS-5提供的命令行窗口中应用 cpptesttrace make clean all之后就生成了BDF文件(当然在生成BDF文件的时候可能需要设置一些环境变量来让构建通过)

修改C++Test构建设置

项目右键->属性(properties)->Parasoft->C++Test->构建设置->选项源->使用来自构建数据文件(bdf)的选项->设置bdf文件路径(如果生成在项目路径下比较方便)->编译器设置->点击自动检测(倘若没有检测出请点击左侧的下拉菜单选择ARM compiler5.0)->C、C++、连接器都输入全路径。

以下情况为项目直接识别

通过RVDS项目能够直接识别,DS-5的示例方案无法直接识别

这样的项目可以不需要对项目做适配就是如果

三、静态分析

许可证是申请的试用许可证,是一个license.dat文件,直接执行静态分析会报告如下错误:

错误: 收集头文件 , TrustZone/main_normal.c 完成代码 1 (ipro)"
Error: C9555E: License checkout for feature ulteval_armcompiler with version 5.0201409 has been denied by Flex back-end. Error code: -1
Cannot find license file.
 The license files (or license server system network addresses) attempted are
listed below.  Use LM_LICENSE_FILE to use a different license file,
 or contact your software provider for a license file.
Feature:       ulteval_armcompiler
Filename:      c:\program files\arm\licenses\license.dat
License path:  c:\program files\arm\licenses\license.dat;
FlexNet Licensing error:-1,359.  System Error: 2 "No such file or directory"
For further information, refer to the FlexNet Licensing documentation,
available at "www.flexerasoftware.com".
Error preprocessing file "D:\workspace\DS-5\TrustZone\main_normal.c":
Process exited with code: 1
Could not preprocess source file

这个是DS-5的许可证问题导致的报错,虽然给IDE设置过许可证了,但是还是去找c:\program files\arm\licenses\license.dat许可证,因此将许可证文件复制到该路径下之后可以执行静态分析

借助以上步骤,我们成功地在ARM DS-5环境中完成了Parasoft C/C++test的安装、项目配置并消除了许可证导致的静态分析障碍,迈出了在DS-5平台进行深度代码质量保障的第一步。​​​​​​​Parasoft C/C++test的强大之处远不止于此。除了静态分析,它还提供了强大的单元测试与运行时错误检测能力,能够帮助客户实现从代码规范审查到深层逻辑缺陷挖掘的全方位测试,显著提升代码质量、确保软件可靠性,并最终加速符合功能安全标准的产品上市进程。

posted @ 2025-11-29 11:14  yangykaifa  阅读(3)  评论(0)    收藏  举报