基于遗传算法的测试数据自动生成方法研究

来源 :广东工业大学 | 被引量 : 9次 | 上传用户:yuming_wu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件测试用来发现软件错误和缺陷,从而达到保证软件质量的目的。软件测试是软件开发周期中重要的环节。生成合适的测试数据是软件测试过程中的重点和关键。手工构造软件测试数据的工作繁琐而盲目,往往导致测试效率不高,测试周期延长,测试充分性难以得到保障。自动生成测试数据可以有效地改进这一过程,降低测试成本,提高测试效率。测试数据自动生成和测试充分性问题是自动化测试中的两个基本问题。路径覆盖是一种严格意义上的覆盖标准,并且在软件开发早期进行路径测试能较早地发现软件中的缺陷和错误,因此路径测试具备较高的实用价值。然而,在实际的软件测试中完全的路径测试是不可行的,通常的做法是选取特定的一条路径或者根据一定的标准选定程序所有路径的有限集合进行测试。本文正是基于此进行了相关的研究,主要工作包括:1、分析和研究了软件测试和遗传算法的基本理论和方法。本文首先详细介绍了软件测试和测试数据生成方法的相关理论,然后再介绍了遗传算法的流程,特点和优势等。2、研究了遗传算法用于测试数据的自动生成方法。在现有的测试数据生成方法以及遗传算法理论的基础之上,本文提出了一种应用改进遗传算法自动生成测试数据的模型,研究了参数编码和遗传操作的具体实现,并重点针对测试数据生成这一具体问题,对适应度函数进行了设计,对遗传算子进行了改进。3、采用改进遗传算法设计的测试数据自动生成模型,以静态分析、程序插桩等方法为辅助,根据选定的目标路径计算得到覆盖该路径的测试数据。依据此模型进行了仿真实验,实现了单路径分支覆盖和多路径分支覆盖测试数据的自动生成,验证了该模型生成路径覆盖测试数据的有效性。4、进一步研究了基于遗传算法的非数值型——字符型和类对象测试数据的生成问题,主要包括编码和适应度函数的设计这两个方面的问题。研究了非数值型测试数据生成方法。对于非数值型测试数据中的字符型数据和类对象测试数据的生成进行了研究;而针对类对象测数据的生成问题,设计了一种新的类对象编码方法,应用于类对象的遗传操作,并采用广义海明距离思想构造类对象的适应度函数。
其他文献
随着计算机技术的快速发展,基于计算机视觉和人工智能技术的人脸识别技术也得到了大力发展,且被广泛应用到身份识别验证、门禁系统、智能视频监控以及一些软件的登录验证等领
图书馆是学习知识的重要场所,馆藏图书数量巨大、类别齐全、质量不一。从中找寻所需的高质量图书,已成为读者借阅图书的迫切需要。现有的图书馆系统中虽然保存了大量的读者信息
传统的关系数据库查询须指出将要查询的属性名,不能像搜索引擎那样自由地进行关键词查询。关系数据库关键词查询(KSORD)可以在不了解关系数据库结构的前提下,实现对关系数据
企业资源规划(ERP)系统是一种将适合于企业的管理思想贯穿其中的企业管理系统。ERP系统的核心模块主要有进货、销售、库存、人事管理、财务管理等。  ERP软件的生命周期长,软
虚拟现实技术在各行各业的应用都得到了飞速的发展,在这样一个网络时代,越来越多的人们利用网络环境来完成现实生活中的各项活动,如:交友、娱乐、购票、模拟驾驶、消防演习、虚
人脸识别是模式识别领域的一个重要研究课题,已被广泛应用于门禁系统、考勤系统、安检、刑事案件侦破等领域中。与其他生物识别技术相比,人脸识别具有非接触式、可靠性强等优点
万维网作为广泛分布,巨大的全球信息服务中心,包含了各种动态,庞大的访问和使用信息,发现信息背后的知识,对于用户访问和个性化服务具有重要的意义。本文针对Web服务器日志的
在生活的各个领域,数据预测具有普遍性,对时间序列预测技术的研究具有深刻的现实意义。本文分别对线性、简单非线性及复杂非线性时间序列的预测问题进行研究。对现有时间序列预
由于基于物理方法的模型变形技术充分运用了待变形模型的物理属性如质量、密度及相关的物理学原理,能够很真实地再现可变形模型的运动形变,所以此类方法能够很好地模拟可变形三
近些年来,无线网络技术的发展取得了革命性的进步。涌现了一大批异构无线网络,这些形式各异的无线网络,共同组成了下一代泛在、异构的无线网络环境。下一代无线网络要求实现“5W