Parasoft C/C++test 作为一款广泛应用于C/C++项目的专业测试工具,通过其动态测试中的插桩机制,有效收集测试执行与覆盖率数据。以下主要介绍如何在 Parasoft C/C++test 中针对不需要插桩的文件或批量文件进行去插桩操作——包括对单个源文件快速取消插桩,以及通过修改配置文件实现不插桩、仅对指定文件插桩的批量配置方法,帮助用户在大规模项目中高效管理测试覆盖范围。
>>点击获取Parasoft C/C++test试用
我们知道Parasoft C/C++test动态测试有一个插桩的过程,也就是向被测源码中插入一些Parasoft C/C++test的API,从而统计执行结果以及覆盖率信息。并非所有代码都需要或都应该被纳入单元测试的覆盖率统计范围。盲目地对所有文件进行插桩和统计,会带来一系列问题。去插桩是为了让测试和覆盖率分析过程更高效、更专注,同时避免无关代码对测试结果的干扰。
一般默认情况下所有的被测源码文件都是自动插桩的,如果需要去插桩某一个文件,需要按照如下操作:
(1)选中去插桩的文件,右击:
(2)去掉勾选插桩选中的源文件
该示例中我们选择将clock.c文件去插桩。首先我们运行一下单元测试,我们会发现对于去插桩的文件将不会统计到覆盖率。
下图为去掉勾选之前的覆盖率统计数据:
下图为去掉勾选之后的覆盖率统计数据,可以看到clock.c的覆盖率为0%:
这一数据表明由于该文件已被排除在插桩范围之外,因此其内部函数的调用情况、分支路径的执行次数等数据均未被记录和统计。这使得该文件完全不会影响整体的覆盖率百分比,从而让开发人员能够将测试分析重点集中在其他真正需要覆盖的目标模块上。
如果我们的项目很大,包含有很多的源码文件,并且计划不需要插桩的源码文件也有很多,此时如果一个一个的选择去插桩,无疑工作量很大,那对于这种插桩的文件就只有我们需要的几个的情况,我们可以通过修改.parasoft配置文件将默认的插桩修改为默认的不插桩:
如图所示将true改为false之后的覆盖率显示情况
通过上述方法,我们实现了在 Parasoft C/C++test 中灵活去除插桩的两种实用方法:单个文件取消插桩和修改配置文件批量设置。这些功能使团队能够依据测试需求精细控制插桩范围,优化测试资源分配,特别适用于大型、多人协作的复杂项目环境。借助 Parasoft C/C++test提供的插桩管理能力,用户可实现更高效、更有针对性的测试覆盖分析,持续提升代码质量和测试流程的可维护性。
Parasoft支持对代码插桩范围的精细化管理和控制,除了以上去插桩应用之外,还能够实现静态代码分析、单元测试自动生成与执行、合规性验证(如IEC 62304、ISO 26262、MISRA等)、以及运行时错误检测等全面质量保障活动,帮助客户在嵌入式、医疗、航空等高要求行业中,持续提升代码可靠性、加速合规进程,并降低软件缺陷带来的风险和成本。
关于慧都
慧都是一家行业数字化解决方案公司,专注于软件、石油与工业领域,以深入的业务理解和行业经验,帮助企业实现智能化转型与持续竞争优势。在软件工程领域,我们提供开发控件、研发管理、代码开发、部署运维等软件开发全链路所需的产品,提供正版授权采购、技术选型、个性化维保等服务,帮助客户实现技术合规、降本增效与风险可控。
慧都科技作为Parasoft公司在中国区的官方授权合作伙伴,为国内企业提供Parasoft C/C++test产品的正版授权、定制化部署与全生命周期技术支持与服务。我们致力于助力客户精准贯彻功能安全标准、全面提升软件开发效率、有效管控项目风险,最终构建符合国际标准的高质量软件体系。
发表评论