期刊文献+
共找到3篇文章
< 1 >
每页显示 20 50 100
基于冗余覆盖信息约简的软件缺陷定位方法 被引量:1
1
作者 王浩仁 崔展齐 +2 位作者 岳雷 陈翔 郑丽伟 《电子学报》 EI CAS CSCD 北大核心 2024年第1期324-337,共14页
软件规模和复杂程度的不断提高,为软件质量保障带来了严峻的挑战.软件缺陷定位是一种重要的软件质量保障技术,其中基于频谱的缺陷定位(Spectrum-based Fault Localization,SFL)是应用最为广泛的软件缺陷定位技术,其通过分析语句覆盖信... 软件规模和复杂程度的不断提高,为软件质量保障带来了严峻的挑战.软件缺陷定位是一种重要的软件质量保障技术,其中基于频谱的缺陷定位(Spectrum-based Fault Localization,SFL)是应用最为广泛的软件缺陷定位技术,其通过分析语句覆盖信息矩阵计算代码语句的可疑度值,并根据可疑度值定位缺陷所在语句.然而,语句覆盖信息矩阵中存在着严重的数据冗余问题,冗余的数据极大地影响了SFL的缺陷定位性能.以Defects4J数据集中395个程序的语句覆盖信息矩阵为例,在超过一半的语句覆盖信息矩阵中有90%的语句存在与其具有相同覆盖信息的语句.特征选择是常用的数据预处理技术,通过去除冗余和不相关特征来获取原始特征集中有价值的特征子集.因此,我们将语句覆盖信息矩阵作为原始特征集,将冗余覆盖信息约简建模为特征选择问题,提出了一种基于冗余覆盖信息约简的软件缺陷定位方法(Fault Localization based on Redundant coverage information Reduction,FLRR).首先,使用特征选择技术对语句覆盖信息和测试用例执行结果组成的语句覆盖信息矩阵进行约简,得到语句覆盖信息矩阵子集;然后,使用SFL计算语句覆盖信息矩阵子集中语句的可疑度值,并根据可疑度值对语句进行降序排列,以定位缺陷语句.本文使用六种常用的特征选择技术对语句覆盖信息矩阵进行特征选择和约简,以得到语句覆盖信息矩阵子集,并使用四种典型的SFL技术对语句覆盖信息矩阵子集中的语句进行缺陷定位.为评估FLRR的缺陷定位性能,本文使用E_(inspect)@n和MRR(Mean Reciprocal Rank)评价指标在基于Defects4J的数据集上与四种典型的SFL技术进行了对比实验.实验结果表明,FLRR能够有效提升SFL的缺陷定位性能.对于E_(inspect)@n指标,当n=1时,FLRR相比DStar、Ochiai、Barinel和OP2分别多定位到23条、26条、14条和13条缺陷语句,分别增加了69.70%、76.47%、45.16%和38.24%;对于MRR指标,FLRR相比DStar、Ochiai、Barinel和OP2分别提升了20.08%、24.94%、17.45%和19.15%. 展开更多
关键词 缺陷定位 特征选择 软件调试 可疑度 语句覆盖信息 测试用例
在线阅读 下载PDF
基于GL_(2)-DNN的面向语句覆盖的程序缺陷定位方法
2
作者 彭玲 刘振宇 彭敏 《计算机应用与软件》 北大核心 2023年第1期46-52,155,共8页
针对现有的基于深度神经网络的缺陷定位方法中参数设定不便,结合遗传算法的全局随机搜索能力、L_(2)正则化防止模型过拟合与深度神经网络学习复杂非线性能力,提出一种基于GL_(2)-DNN模型的程序静态缺陷定位算法。通过遗传算法寻找深度... 针对现有的基于深度神经网络的缺陷定位方法中参数设定不便,结合遗传算法的全局随机搜索能力、L_(2)正则化防止模型过拟合与深度神经网络学习复杂非线性能力,提出一种基于GL_(2)-DNN模型的程序静态缺陷定位算法。通过遗传算法寻找深度神经网络最优超参数;将所得语句覆盖信息与状态值输入深度神经网络计算每条可执行语句的可疑度值;根据可疑度值由高往低排序进行缺陷定位。选用Siemens Suite数据集作为实验样本,将GL_(2)-DNN与五种缺陷定位算法进行实验对比,结果表明,该算法能更精确地定位缺陷,计算效率也有所提升。 展开更多
关键词 遗传算法 L_(2)正则化 深度神经网络 程序静态缺陷定位 语句覆盖信息
在线阅读 下载PDF
基于变量感染分析的软件错误定位技术
3
作者 江联 黄海亮 +2 位作者 周晓聪 王欣明 李文军 《计算机科学与探索》 CSCD 2014年第8期966-977,共12页
在实际调试中,程序员往往通过追溯错误的变量值及其传播来定位软件错误,其中具有错误值的变量称为感染变量,感染变量在失败运行中具有错误值的程序位置即为感染位置。提出了一种结合动态正向程序切片和语句覆盖信息对程序变量感染的初... 在实际调试中,程序员往往通过追溯错误的变量值及其传播来定位软件错误,其中具有错误值的变量称为感染变量,感染变量在失败运行中具有错误值的程序位置即为感染位置。提出了一种结合动态正向程序切片和语句覆盖信息对程序变量感染的初始位置进行定位的技术。该技术通过分析感染变量的起源与传播,可以更加精确地找到与感染变量相关的错误语句集合。与传统的基于程序覆盖信息的错误定位技术进行了对比实验,结果表明,该技术可定位程序中的感染变量及其初始感染位置,并且可以显著提高程序错误定位的精度。 展开更多
关键词 错误定位 变量感染 动态程序切片 语句覆盖信息
在线阅读 下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部