「软件缺陷定位」程序语句执行频谱的获取——Gcov 工具和自动化工具

本文介绍了程序频谱(Code Coverage)和基于频谱的缺陷定位技术,以西门子测试集中的replace程序为例,展示了如何使用Gcov工具获取每个测试用例的语句执行频谱,以及如何通过自动化脚本生成结果矩阵,实现软件缺陷定位的自动化流程。
摘要由CSDN通过智能技术生成

程序频谱

关于程序频谱(Program Spectrum)和基于程序频谱的缺陷定位(SFL, Spectrum Fault Localization),定义和介绍如下:

Program spectra, also known as code coverage, can be defined as a set of program entities covered during test execution . Spectrum-based fault localization uses information from program entities executed by test cases to indicate entities more likely to be faulty. There are several synonyms of program spectrum used in the literature, such as code coverage, testing data, dynamic information, execution trace, execution path, path profile, and execution profile.

程序频谱,也称为代码覆盖,记录了程序在执行期间的实体覆盖情况。而基于程序频谱的缺陷定位,就是利用这些执行信息,进行软件的缺陷定位的技术。

目标

在西门子测试集中,已 replace 程序为例子,该例子中包含:

  • 一个正确版本的程序,和 32 个错误版本(每个版本引入了一个 Bug)
  • 5542 个测试用例,可以为每个版本程序产生 5542 个测试输出

目标输出:

  • 对于每个错误版本,获得他们在每个测
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值