当前位置:主页 > 科技论文 > 软件论文 >

基于变异的错误定位优化技术研究

发布时间:2020-06-15 00:14
【摘要】:识别软件系统中存在错误的代码位置是软件调试过程中最为困难和耗时的环节之一。最近提出的基于变异的错误定位(Mutation Based Fault Localization,MBFL)技术是目前定位精度最好的一种自动化错误定位技术,能有效减少开发人员查找错误所需要的时间消耗。MBFL技术源于变异测试,需要对被测程序生成变异体,执行测试用例,并利用执行信息来进行错误定位。通常变异体和测试用例数量都随程序规模增加而增大,而MBFL技术需要在每个变异体上执行所有测试用例,因此执行开销很大。以软件回归测试领域经典的基准被测程序space为例,该程序可执行的代码行数为5K~6K,程序自带1万多个测试用例,可生成的变异体接近4万个。如果使用MBFL技术定位该程序中的错误,需要执行约5亿次变异测试(Mutant-Test Pair,MTP),时间花费巨大。MBFL技术具有很高的错误定位精度,约减变异执行是改进MBFL技术的有效手段。所以在保证错误定位精度前提下,如何优化变异体执行,减少执行开销,是在实际中应用MBFL技术的关键研究问题。本文从多个角度研究MBFL优化问题,在保持原始MBFL技术错误定位高精度的前提下,提出变异测试执行的优化方法,进而降低MBFL执行开销,为MBFL技术从理论研究走向实际应用奠定基础。本文具体研究内容如下:(1)面向MBFL的变异体静态采样方法:变异体采样是一种约减变异执行的有效方法,但不可避免的带来定位精度损失的问题。为减少MBFL错误定位精度由于变异体约减带来的损耗,本文首先针对变异体采样研究相关因素与错误定位精度之间的关系,具体包括采样粒度、采样前后的变异体集合的语句分布、变异算子分布、错误分布等。在此基础上,提出了基于语句层面的细粒度变异体采样和面向错误分布的变异体采样两种策略。相比原始MBFL,这两种技术可以有效提高变异体的变异算子完整性和语句分布多样性。实验表明,应用这两种策略可以在错误定位精度损失很小的前提下,平均减少约80%的变异体,有效提高了 MBFL执行效率。(2)MBFL变异体执行动态优化方法:在MBFL变异体执行过程中,通过研究语句怀疑度、变异体怀疑度计算和变异体执行测试用例结果之间的相互关系,提出了面向变异体和面向测试用例的两种动态优化策略,在变异执行过程中,动态约减变异体和测试用例的执行。实验结果显示应用这两种动态优化策略的MBFL技术能在保留原始MBFL错误定位精度不变的前提下,平均减少约53.9%的变异体执行开销;(3)静态与动态相结合的MBFL优化技术:通过整合前面两个方面的研究成果,提出了一种结合变异体静态采样和变异体执行动态优化方法的MBFL整体优化技术框架。实验结果表明,应用该优化技术能在保留原始MBFL错误定位高精度的前提下,平均减少约87.9%的变异体执行开销,显著提升了 MBFL技术的执行效率。综上所述,本文针对MBFL变异体执行时间开销太大的问题,在变异体运行测试用例之前,研究两种变异体采样策略形成了一种能有效降低变异体规模同时保持原始MBFL错误定位高精度的变异体采样方法;在变异体执行测试用例过程中,提出了面向变异体约减和测试用例约减两种动态优化策略,形成了一种MBFL变异体执行动态优化技术,并通过理论分析了该方法可以保证不损失原MBFL技术的错误定位精度;最后,实现了静态与动态优化相结合的完整MBFL优化技术,在保留原始MBFL技术错误定位高精度的前提下,减少了约87.9%的变异体执行开销,大幅度提升了 MBFL的执行效率,为MBFL技术从理论研究走向实际应用奠定了基础。
【学位授予单位】:北京化工大学
【学位级别】:博士
【学位授予年份】:2018
【分类号】:TP311.53
【图文】:

技术框架,变异体,测试用例,测程


1.3.1研究内容逡逑本课题的研究内容由MBFL技术框架的各个步骤的优化方法组成。MBFL的技术逡逑框架如图1-2所示,首先通过变异算子对被测程序植入变异,生成规模庞大的变异体,逡逑然后每个变异体都需要执行测试用例集中所有测试用例,执行过程中MBFL收集动态逡逑信息求得被测程序的语句怀疑度,生成错误定位报告。逡逑变异算子逦逦逡逑OP={0pl,0p2...0Pq}逡逑被测程序P={s丨,s2..s?}邋逦入变.逡逑测试用例集T={t丨,t2..ty}逦变异体集合M={mi,m2..mk}逡逑次邋MTP邋并收逡逑^邋兵算语士怀疑虔逡逑逦圭成错误定位报t逦>逡逑图1-2邋MBFL技术框架逡逑Fig.邋1-2邋The邋framework邋of邋MBFL逡逑如图1-2所示,MBFL的关键步骤是变异体执行测试用例,每一次变异体-测试用逡逑14逡逑

优化技术,变异体,方案,错误定位


图2-1邋MBFL优化技术研宄方案逡逑Fig.2-1邋Framework邋of邋MBFL邋optimization邋research逡逑如图2-1所示,本文采取的MBFL优化技术研宄方案包括变异体静态约减和变异逡逑执行动态优化两个部分。变异体静态约减是在对程序采用变异算子植入错误生成变异逡逑体集合之后,通过应用变异体采样策略选择部分变异体执行测试用例进行MBFL错误逡逑定位过程。相比使用变异体全集执行测试用例进行错误定位,变异体静态约减之后通逡逑常会带来变异体集合信息的丢失,影响错误定位精度,因此设计更好的变异体采样策逡逑略,尽量减少错误定位精度损失,是本方案的研宄的重点和难点之一;在变异体集合逡逑确定之后,MBFL需要在变异体上运行测试用例,并收集执行过程中的数据用于计算逡逑变异体和语句的怀疑度,完成错误定位。本文将在变异体执行测试用例过程中,从语逡逑句怀疑度和变异体怀疑度计算、变异体执行约减和测试用例执行约减等多个方面动态逡逑分析MBFL变异体执行过程,研宄MBFL错误定位精度和变异体执行测试用例之间逡逑17逡逑

【相似文献】

相关期刊论文 前10条

1 王曙燕;陈朋媛;孙家泽;;基于变异分析的测试用例约简方法[J];计算机应用;2017年12期

2 杨军;卢彩霞;黄辰;王婷;;测试用例复用在电子采购交易平台中的应用[J];计算机与数字工程;2018年01期

3 程雪梅;翟宇鹏;;测试用例修复的方法与工具综述[J];现代计算机(专业版);2017年02期

4 赵鹤;高婉玲;;基于模型的软件测试用例生成方法比较研究[J];现代计算机(专业版);2017年04期

5 曾嘉彦;;符号执行技术在测试用例生成中的应用[J];现代计算机(专业版);2017年04期

6 张功杰;谢春丽;;面向测试用例生成的集合进化算法实现[J];牡丹江师范学院学报(自然科学版);2017年02期

7 魏长安;王钢;盛云龙;张永卓;;组合测试用例自动生成软件设计[J];自动化技术与应用;2017年05期

8 臧丽娜;;基于死锁的并发类单元测试用例自动生成[J];计算机应用与软件;2017年04期

9 杨芳;丁晓明;;多目标测试用例优先级排序研究进展[J];重庆工商大学学报(自然科学版);2017年03期

10 颜丽;;基于消息交互的测试用例编写方法的实现[J];萍乡学院学报;2017年03期

相关会议论文 前10条

1 周晓燕;李兵;潘伟丰;覃叶宜;;基于错误传播概率网络的软件回归测试用例选择[A];第五届全国复杂网络学术会议论文(摘要)汇集[C];2009年

2 王道堂;林春哲;张凯;;软件测试用例构造方法与手段[A];计算机技术在工程建设中的应用——第十二届全国工程建设计算机应用学术会议论文集[C];2004年

3 林春哲;张凯;王道堂;;软件测试用例设计分析[A];计算机技术在工程建设中的应用——第十二届全国工程建设计算机应用学术会议论文集[C];2004年

4 张侠影;李志蜀;;一种优化的测试用例约简方法[A];2008'中国信息技术与应用学术论坛论文集(一)[C];2008年

5 张德平;聂长海;徐宝文;;划分测试用例选择策略研究[A];第五届中国测试学术会议论文集[C];2008年

6 王斌;;软件测试用例相关问题探讨[A];中国原子能科学研究院年报 2013[C];2014年

7 周瑞杰;江国华;;基于遗传算法的面向对象类测试用例生成研究[A];2010通信理论与技术新发展——第十五届全国青年通信学术会议论文集(下册)[C];2010年

8 邱程;邬小鲁;何聪;范志容;李凯;;基于黑盒测试的车载影音娱乐系统测试用例设计方法[A];2016中国汽车工程学会年会论文集[C];2016年

9 章靠;丁佐华;;基于事件图的并发软件测试[A];第四届中国软件工程大会论文集[C];2007年

10 王新光;万定生;张希伟;;浅谈程序设计语言教学中工程能力的培养[A];2005全国计算机程序设计类课程教学研讨会论文集[C];2005年

相关重要报纸文章 前10条

1 本报记者 王欣;5G要这么测[N];通信产业报;2017年

2 罗德与施瓦茨(中国)科技有限公司;R&S公司:集成化NB-IoT测试方案[N];通信产业报;2017年

3 特约撰稿 张勇;基于需求的测试:确保需求与软件的统一[N];计算机世界;2011年

4 计算机世界实验室 韩勖;拨云见日[N];计算机世界;2008年

5 ;找错[N];计算机世界;2002年

6 信息产业部软件与集成电路促进中心 于明邋唐仕武;驶入测试“快车道”[N];计算机世界;2007年

7 谢敏 沈雪芳 戴金龙;解决软件测试的近忧和远虑[N];计算机世界;2005年

8 刘昶;WiMAX射频测试期待一致性解决方案[N];中国电子报;2007年

9 罗德与施瓦茨中国有限公司 刘昶;用规范化“通畅”PoC测试[N];通信产业报;2006年

10 罗德与施瓦茨中国有限公司产品支持部;R&S:实现端到端LTE测试[N];通信产业报;2013年

相关博士学位论文 前10条

1 刘勇;基于变异的错误定位优化技术研究[D];北京化工大学;2018年

2 张功杰;基于集合进化与占优关系的变异测试用例生成[D];中国矿业大学;2017年

3 张慧;基于测试用例的错误定位技术研究[D];东南大学;2016年

4 张旭舟;面向复杂程序结构的测试用例自动生成方法研究[D];北京邮电大学;2018年

5 刘玲;基于面向对象形式规格说明的测试用例生成技术[D];上海大学;2004年

6 占学德;基于UML statecharts测试方法的研究[D];上海大学;2005年

7 金虎;自动化软件测试技术研究[D];四川大学;2006年

8 李军义;软件测试用例自动生成技术研究[D];湖南大学;2008年

9 游亮;回归测试用例选择技术研究[D];华中科技大学;2012年

10 李丽;航天相机主控软件测试用例自动生成技术的研究[D];中国科学院研究生院(长春光学精密机械与物理研究所);2010年

相关硕士学位论文 前10条

1 季瑞骅;基于网络扰动的复杂系统不确定行为检测研究[D];南京大学;2016年

2 董路迪;基于用户日志分析的测试用例生成系统的设计与实现[D];哈尔滨工业大学;2018年

3 章天宁;基于UML模型的测试用例优先排序技术研究[D];杭州电子科技大学;2018年

4 杨杰;基于Markov链的可靠性测试用例自动生成技术[D];杭州电子科技大学;2018年

5 吴俊;基于UML的模型转换方法与测试用例优先级排序方法研究[D];杭州电子科技大学;2018年

6 时小芳;基于线性蜕变关系的蜕变测试工具设计及应用研究[D];南华大学;2018年

7 张嘉华;财产保险公司人力资源绩效管理信息系统的设计与实现[D];电子科技大学;2017年

8 王冠成;基于机器学习的编译器测试优化方法研究[D];吉林大学;2018年

9 王丽瑶;蜕变测试的测试用例生成技术的研究[D];吉林大学;2018年

10 欧建生;线性拟合制导的面向CDC/MCDC的测试用例自动生成方法[D];南京大学;2015年



本文编号:2713582

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2713582.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户b7111***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com