计算机科学››2020,第47卷››问题(9): 40-46.数字对象标识:10.11896/jsjkx.200700021

•计算机软件* 上一篇   下一篇

基于支配关系的数据流测试用例生成方法

吉顺慧, 张鹏程  

  1. 河海大学计算机与信息学院 南京211100
  • 收稿日期:2020-07-03 发布日期:2020-09-10
  • 通讯作者:吉顺慧(sunhuiji@hhu.edu.cn)
  • 基金资助:
    国家自然科学基金(61702159);江苏省自然科学基金(BK20170893)

基于支配关系的数据流测试用例生成方法

季顺辉、张鹏成  

  1. 河海大学计算机与信息学院,南京211100
  • 收到:2020-07-03 出版:2020-09-10
  • 关于作者:季顺辉,1987年生,博士,讲师,中国计算机联合会会员。她的主要研究兴趣包括软件建模、分析、测试和验证。
  • 支持单位:
    国家自然科学基金(61702159)和江苏省自然科学基金(BK20170893)。

摘要:程序控制流的设计是为实现正确的数据流服务的,数据流测试是非常重要的。文中将面向通用数据流准则的测试用例生成问题建模为多目标优化问题,提出了一种基于遗传算法的测试用例生成方法。通过构建待测程序的控制流图进行数据流分析,计算出程序中所有的定义-使用对,得到测试目标,利用面向多测试目标的遗传算法生成满足通用准则的最优解。遗传算法中定义了一种改进的基于支配关系的适应度函数,在分析测试用例对定义-使用对的覆盖程度时考虑了存在重定义的可能性,且考虑了定义结点和使用结点在执行路径中的先后顺序。实验结果表明,所提方法可以有效地生成满足通用准则的测试用例,相比其他方法可以有效地提升测试目标的覆盖率,降低生成测试用例所需的迭代次数。

关键词: 测试用例生成, 适应度函数, 数据流测试, 遗传算法, 支配结点

摘要:程序中控制流的设计是为了实现正确的数据流。执行数据流测试非常重要。将面向通用数据流标准的测试用例生成问题定义为多目标优化问题,提出了一种基于遗传算法的测试用例产生方法。通过构造待测试程序的控制流图,进行数据流分析,计算出测试需求的所有定义-使用对。然后采用多目标遗传算法搜索满足所有用途准则的最优解。基于优势关系定义了一个改进的适应度函数。考虑到killing定义的存在,以及定义节点和使用节点在执行路径中的顺序,分析测试用例相对于定义-使用对的覆盖率。实验结果表明,该方法能够有效地生成满足通用准则的测试用例。与其他方法相比,它可以提高覆盖率,减少代数。

关键词: 数据流测试, 支配节点, 健身功能, 遗传算法, 测试用例生成

中图分类号: 

  • TP311型
[1] RAPPS S,WEYUKER E J.使用数据流信息选择软件测试数据[J]。IEEE软件工程学报,1985年,SE-11(4):367-375。
[2] JI S H,LI B X,ZHANG P C.组合服务基于标准的回归测试用例选择[J]。IEEE接入,2019,7:174438-174464。
[3] AHMED MA,HERMADI I.基于遗传算法的多路径测试数据生成器[J]。计算机与运筹学,2008,35(10):3107-3124。
[4] GIRGIS M R.使用遗传算法为数据流测试自动生成测试数据[J]。《通用计算机科学杂志》,2005,11(6):898-915。
[5] GHIDUK A S,HARROLD M J,GIRGIS M R.使用遗传算法辅助数据流覆盖测试数据生成[C]//14第个亚太软件工程会议,2007:41-48。
[6] 龚德,张伟,姚霞.基于分组的多路径覆盖测试数据的进化生成[J]。《系统与软件杂志》,2011,84(12):2222-2233。
[7] AHO A V,LAM M S,SETHI R,et al.编译器:原理、技术和工具[M]//纽约:Addison-Wesley,2006:597-632。
[8] LENGAUER T,TARJAN R E.求流图支配子的快速算法[J]。美国计算机学会程序设计语言与系统汇刊,1979年,1(1):121-141。
[9] VARSHNEY S,MEHROTRA M.使用优势概念、分支距离和精英性的基于搜索的数据流依赖性测试数据生成器[J]。《阿拉伯科学与工程杂志》,2016年,41:853-881。
[10] ANDREOU A S,ECONOMIDES K A,SOFOKLEOUS A A.基于数据流准则和遗传算法的软件测试数据自动生成模式[C]//第七届国际计算机与信息技术会议,2007:867-872。
[11] 邓敏杰,陈蓉,杜振杰.数据流分析与遗传算法相结合的自动测试数据生成模型[C]//普适计算联合会议,2009:429-433。
[12] JAFFARI A,YOO C J,LEE J.使用活动图和基于搜索的技术自动生成测试数据[J]。应用科学,2020,10(10):1-21。
[13] VIVANTI M,GORLA A M,FRASER G.基于搜索的数据流测试生成[C]//IEEE 24第个软件可靠性工程国际研讨会(ISSRE)。2013:370-379。
[14] 陈建清,姜世杰,张志刚.基于数据流准则的测试用例生成方法[J]。计算机科学,2017,44(2):107-111。
[15] 江S,陈J,张勇,钱J,王荣,薛M.数据流测试数据生成的进化方法[J]。IET软件,2018,12(4):318-323。
[16] GHIDUK A S.一种基于蚁群算法的软件数据流测试新方法[J]。环球计算机科学与工程技术杂志,2010,1(1):64-72。
[17] NAYAK N,MOHAPATRA D P.使用粒子群优化技术为数据流测试自动生成测试数据[C]//当代计算国际会议,2010:1-12。
[18] KUMAR S,YADAV D K,KHAN D A.一种基于粒子群优化算法的基于优势概念的数据流相关性加速测试数据生成器[J]。国际系统保证工程与管理杂志,2017,8(2):S1534-S1552。
[19] KUMAR S,YADAV D K,KHAN D A.基于混合自适应PSO-GA算法的数据流测试数据自动生成新方法[J]。国际高级智能范式杂志,2018,9(2/3):278-312。
[20] SHEORAN S,MITTAL N,GELBUKH A.最佳测试集生成数据流测试中的人工蜂群算法[J]。国际系统保证工程与管理杂志,2020,11(2):340-349。
[1] 杨浩雄, 高晶, 邵恩露.
考虑一单多品的外卖订单配送时间的带时间窗的车辆路径问题
考虑单订单多产品订单配送的外卖食品时间窗车辆路径问题
计算机科学, 2022年,49(6A):191-198年。https://doi.org/10.11896/jsjkx.210400005
[2] 沈彪, 沈立炜, 李弋.
空间众包任务的路径动态调度方法
面向空间众包的动态任务调度方法
计算机科学, 2022, 49(2): 231-240.https://doi.org/10.11896/jsjkx.210400249
[3] 吴善杰, 王新.
基于AGA-DBSCAN RBF神经网络构造煤厚度预测方法
基于AGA-DBSCAN优化RBF神经网络的构造煤厚度预测
计算机科学, 2021, 48(7): 308-315.https://doi.org/10.11896/jsjkx.200800110
[4] 王金恒, 单志龙, 谭汉松, 王煜林.
基于遗传优化PNN公司神经网络的网络安全态势评估
基于遗传优化PNN神经网络的网络安全态势评估
计算机科学, 2021, 48(6): 338-342.https://doi.org/10.11896/jsjkx.201200239
[5] 郑增乾, 王锟, 赵涛, 蒋维, 孟利民.
带宽和时延受限的流媒体服务器集群负载均衡机制
带宽和时延受限流媒体服务器集群的负载平衡机制
计算机科学, 2021, 48(6): 261-267.https://doi.org/10.11896/jsjkx.200400131
[6] 汪文轩, 胡军, 胡建成, 康介祥, 王辉, 高忠杰.
一种面向形式化表格需求模型的测试用例生成方法
面向表格形式需求模型的测试用例生成方法
计算机科学, 2021, 48(5): 16-24.https://doi.org/10.11896/jsjkx.201000048
[7] 左剑凯, 吴杰宏, 陈嘉彤, 刘泽源, 李忠智.
异构无人机编队防御及评估策略研究
异构无人机编队防御与评估策略研究
计算机科学, 2021, 48(2): 55-63.https://doi.org/10.11896/jsjkx.191100053
[8] 高帅, 夏良斌, 盛亮, 杜宏亮, 袁媛, 韩和同.
基于投影圆度和遗传算法的空间圆柱面拟合方法
基于投影圆度和遗传算法的空间圆柱拟合
计算机科学, 2021年,48(11A):166-169。https://doi.org/10.11896/jsjkx.201100057
[9] 姚泽玮, 林嘉雯, 胡俊钦, 陈星.
基于PSO-GA公司的多边缘负载均衡方法
基于PSO-GA的多边缘负载平衡方法
计算机科学, 2021年,48(11A):456-463。https://doi.org/10.11896/jsjkx.210100191
[10] 高基旭, 王珺.
一种基于遗传算法的多边缘协同计算卸载方案
基于遗传算法的多边缘协同计算卸载方案
计算机科学, 2021, 48(1): 72-80.https://doi.org/10.11896/jsjkx.20080088
[11] 董明刚, 黄宇扬, 敬超.
基于遗传实例和特征选择的K(K)近邻训练集优化方法
基于遗传实例和特征选择的K-最近邻分类训练集优化方法
计算机科学, 2020, 47(8): 178-184.https://doi.org/10.11896/jsjkx.190700089
[12] 梁正友, 何景琳, 孙宇.
一种用于微表情自动识别的三维卷积神经网络进化方法
面部微表情自动识别的三维卷积神经网络进化方法
计算机科学, 2020, 47(8): 227-232.https://doi.org/10.11896/jsjkx.1907000009
[13] 杨德成, 李凤岐, 王祎, 王胜法, 殷慧殊.
智能三维打印路径规划算法
智能3D打印路径规划算法
计算机科学, 2020, 47(8): 267-271.https://doi.org/10.11896/jsjkx.190700184
[14] 包振山, 郭俊南, 谢源, 张文博.
基于LSTM-GA公司的股票价格涨跌预测模型
基于LSTM和GA的股价趋势预测模型
计算机科学, 2020年,47(6A):467-473。https://doi.org/10.11896/JsJkx.190900128
[15] 马创, 吕孝飞, 梁炎明.
基于GA-SVM公司的农产品质量分类
基于GA-SVM的农产品质量分类
计算机科学, 2020年,47(6A):517-520。https://doi.org/10.11896/JsJkx.190900184
已查看
全文


摘要

引用

  共享   
  讨论   
找不到建议阅读的文章!