测试数据自动生成技术研究

测试数据自动生成技术研究

论文摘要

软件测试可以被视为为了发现错误而执行程序的过程,其中设计和生成有效的测试用例是决定其质量的重要因素之一。作为人工测试的重要补充,测试数据自动生成技术可以节省测试时间,降低开发成本,拓展测试人员的能力,在许多测试领域发挥着不可替代的作用。多年来,人们对它进行了广泛而深入的研究,取得了许多研究成果,使之在功能性测试、结构性测试、性能测试等领域得到广泛应用。本文从组合测试和演化测试的角度,对功能性测试和结构性测试的测试数据自动生成技术进行了深入研究,主要工作包括:(1)在功能性测试领域,基于组合测试模型,提出了若干种测试数据自动生成方法,有助于获得高质量的测试数据集;(2)通过对程序分析与切片技术的研究,探索了结构性测试的基础理论;(3)提出了若干种结构性演化测试方法及优化技术,能够自动生成满足测试目标的测试数据。论文工作的主要成果表现在以下几个方面:在组合覆盖测试模型的基础上,提出了一种基于解空间树的组合测试数据生成方法,所生成的测试数据集与同类方法相比具有一定的特点和优势。提出两种多因素组合测试数据的生成算法,可作为已有方法的有益补充,适用于关键系统的测试。针对面向方面程序(aspect-oriented program)的特点,提出了一种新的程序依赖性分析与切片方法,可以准确地计算面向方面程序的控制依赖和数据依赖。结合程序分析方面的研究,提出了两种测试数据生成方法,可以分别生成满足多重条件覆盖和改进的条件/判定覆盖的测试数据集。提出了一种针对路径覆盖的演化测试方法以及若干种适应值函数的构造方法,可以自动生成测试数据以覆盖指定的路径。实验表明,该方法的效率显著优于随机测试和人工测试。提出了一种自适应的演化测试动态优化方法,可以有效地解决进化停滞问题。在演化测试的静态配置优化方面,通过大量的实验分析,总结出一批针对结构性演化测试的规则与建议,对演化测试的应用有较高的参考价值。

论文目录

  • 摘要
  • Abstract
  • 第一章 引言
  • 1.1 选题依据
  • 1.2 国内外研究现状
  • 1.2.1 组合测试技术
  • 1.2.2 演化测试技术
  • 1.3 主要研究内容
  • 1.3.1 组合测试技术研究
  • 1.3.2 演化测试技术研究
  • 1.4 论文主要成果
  • 1.5 论文结构
  • 第二章 组合测试数据自动生成
  • 2.1 组合测试模型
  • 2.2 相关工作
  • 2.3 基于解空间树的组合测试数据生成
  • 2.3.1 组合测试的解空间树模型
  • 2.3.2 回溯法遍历算法
  • 2.3.3 PSST 算法基本性质
  • 2.3.4 实验分析
  • 2.3.5 相关工作比较
  • 2.4 多因素组合测试数据生成
  • 2.4.1 两种k 因素组合覆盖表生成算法
  • 2.4.2 实验分析
  • 2.5 基于测试数据补充生成的错误定位方法
  • 2.5.1 基本模型和方法
  • 2.5.2 实验分析
  • 2.6 本章小结
  • 第三章 基于程序分析的结构性测试技术
  • 3.1 面向方面的系统依赖图构造
  • 3.1.1 面向对象程序的系统依赖图
  • 3.1.2 现有方法问题分析
  • 3.1.3 AspectC++程序的依赖性分析
  • 3.1.4 AspectSDG 的特点
  • 3.1.5 AspectC++程序切片
  • 3.1.6 小结
  • 3.2 基于二元决策图的测试数据生成
  • 3.2.1 测试覆盖的基本概念
  • 3.2.2 简单二元决策图
  • 3.2.3 利用简单二元决策图生成测试数据
  • 3.2.4 覆盖率度量工具CCMT-2
  • 3.3 本章小结
  • 第四章 结构性演化测试技术
  • 4.1 演化测试
  • 4.1.1 遗传算法
  • 4.1.2 演化测试
  • 4.2 结构性演化测试技术
  • 4.3 针对路径覆盖的演化测试方法
  • 4.3.1 基本模型
  • 4.3.2 基于路径匹配的方法
  • 4.3.3 基于节点序列匹配的方法
  • 4.3.4 基于点状图的方法
  • 4.4 实验设置
  • 4.4.1 性能指标
  • 4.4.2 被测试程序
  • 4.4.3 遗传算法配置参数
  • 4.4.4 基本实验参数的确定
  • 4.5 实验分析
  • 4.6 实验小节
  • 4.7 本章小结
  • 第五章 演化测试优化
  • 5.1 进化停滞问题
  • 5.2 演化测试动态优化
  • 5.3 实验分析
  • 5.3.1 实验设置
  • 5.3.2 SOMP 的参数设置
  • 5.3.3 SOMP 对演化测试的影响
  • 5.4 实验结论与建议
  • 5.5 本章小结
  • 第六章 演化测试实验平台的设计与实现
  • 6.1 ETF 的总体目标与系统特点
  • 6.2 ETF 的输入与输出
  • 6.3 演化计算模块
  • 6.4 演化测试模块
  • 6.5 本章小结
  • 第七章 结束语
  • 致谢
  • 参考文献
  • 附录一 攻读博士学位期间完成的论文列表
  • 附录二 攻读博士学位期间参加的科研项目列表
  • 相关论文文献

    • [1].银行测试数据的可复用管理研究[J]. 中国金融电脑 2015(10)
    • [2].基于迭代松弛的测试数据自动生成框架的分析与设计[J]. 湖南涉外经济学院学报 2010(04)
    • [3].回归测试数据进化生成[J]. 计算机学报 2014(03)
    • [4].轴系测试数据分布特征信息获取方法与应用[J]. 中国舰船研究 2019(S1)
    • [5].基于改进遗传算法的测试数据自动生成的研究[J]. 计算机科学 2017(03)
    • [6].面向路径的测试数据自动生成工具的设计[J]. 计算机工程与应用 2010(15)
    • [7].银行测试数据合成有“招”[J]. 金融电子化 2010(02)
    • [8].大数据环境下配电系统测试数据脱敏技术研究[J]. 机械设计与制造工程 2019(03)
    • [9].类对象测试数据自动生成研究[J]. 微计算机信息 2009(06)
    • [10].大数据试飞测试数据处理与管理系统设计[J]. 中国科技信息 2019(12)
    • [11].改进的遗传算法及其在测试数据自动生成中的应用[J]. 信息技术与信息化 2013(04)
    • [12].如何对课堂测试数据进行分析[J]. 教育测量与评价(理论版) 2010(07)
    • [13].银行测试数据脱敏工作难题探析[J]. 金融科技时代 2017(11)
    • [14].独立于测试数据的字典编码方法[J]. 电子测量与仪器学报 2016(04)
    • [15].基于累积差分的飞行测试数据同类段定义[J]. 探测与控制学报 2011(06)
    • [16].银行测试数据自动化构建实践[J]. 中国金融电脑 2019(07)
    • [17].测试数据脱敏技术框架的研究与探讨[J]. 中国金融电脑 2016(07)
    • [18].基于小波变换的随钻测试数据降噪方法研究[J]. 西南石油大学学报(自然科学版) 2011(01)
    • [19].自动测试系统中测试数据管理[J]. 电子测量技术 2010(03)
    • [20].如何选取测试数据[J]. 软件世界 2008(01)
    • [21].测试数据瘦身综合评价体系与方案的研究与探讨[J]. 中国金融电脑 2016(10)
    • [22].基于程序结构的软件测试数据自动生成系统[J]. 中国科技信息 2015(05)
    • [23].教育部办公厅关于做好2008年《国家学生体质健康标准》测试数据报送工作的通知[J]. 中华人民共和国教育部公报 2008(09)
    • [24].基于启发式算法的测试数据自动生成方法[J]. 福建电脑 2009(07)
    • [25].合约变异在测试数据优化中的研究及应用[J]. 价值工程 2010(33)
    • [26].利用整数存储无理数的测试数据编码压缩方法[J]. 计算机辅助设计与图形学学报 2016(09)
    • [27].基于自适应粒子群优化算法的测试数据扩增方法[J]. 计算机应用 2016(09)
    • [28].测试数据脱敏综合评价体系的研究与探讨[J]. 中国金融电脑 2014(07)
    • [29].一种混合相容数据块的测试数据压缩方案[J]. 哈尔滨理工大学学报 2011(06)
    • [30].基于选择性冗余的测试数据自动生成算法[J]. 计算机研究与发展 2009(08)

    标签:;  ;  ;  ;  ;  

    测试数据自动生成技术研究
    下载Doc文档

    猜你喜欢