论文摘要
软件测试是保证软件质量和可靠性的主要手段,而测试数据的设计是软件测试的重要环节,测试数据的自动生成是其关键和难点。随着软件技术的发展,程序的规模逐渐增大,复杂度也逐渐增加。在软件的开发过程中,完全依靠人力进行分析测试效率太低,而且不能保证软件质量。测试过程中的一个主要问题是生成具有一定覆盖度的测试数据,并且这些数据不属于等价类。如果有一种工具能自动地分析程序并且生成测试数据,将大大地提高软件的可靠性并且节约大量的人力。目前自动生成测试数据的工具已有很多,但是大多数都有一定的局限性,不能完全自动地生成测试数据,所能处理的数据类型也有限,也只能用于局部的单元测试。本文首先简要介绍该领域的研究进展,阐述了软件自动化的基本理论,着重对软件测试的试探法的遗传算法和马尔科夫链模型进行了深入研究,并在此基础上提出了改进,给出了新的测试用例的设计方法以及如何根据该方法自动生成测试用例。本文在遗传算法的基础上分析了自适应遗传算法,提出改进了的自适应遗传算法,并对它们分别进行了仿真分析。同时引入了遗传算法与模拟退火算法相结合的遗传模拟退火算法,验证了遗传模拟退火算法在搜索最优问题上的优越性。利用遗传模拟退火算法提出了面向路径的测试用例数据自动生成方法和基于覆盖率的测试用例方法。马尔科夫链使用模型是用随机过程模型来描述软件的使用方式,基于马尔科夫链模型的软件统计测试方法首先构造出软件的马尔科夫链使用模型,描述软件的使用方式,并结合遗传模拟退火算法自动生成状态转移概率矩阵,用于指导测试用例的生成。最后把遗传算法和马尔科夫链使用模型结合起来,实现高科软件测试的自动化测试工具系统的原型系统。
论文目录
摘要ABSTRACT第一章 引言1.1 研究背景及意义1.2 国内外研究现状1.3 课题来源和作者的主要工作1.4 论文结构1.5 本章小结第二章 软件测试技术2.1 软件测试的概念2.2 软件测试的过程2.3 传统软件测试的问题2.4 软件自动化测试技术2.4.1 自动化测试的生命周期2.4.2 适合自动化测试的活动2.4.3 自动化体系结构2.4.4 自动化测试优点2.4.5 自动化测试用例生成技术2.5 本章小结第三章 遗传算法及遗传算法的改进3.1 遗传算法3.1.1 遗传算法原理3.1.2 遗传算法技术在软件测试中的研究现状3.1.3 遗传算法的优缺点3.1.4 遗传算法与传统方法的比较3.1.5 遗传算法的设计3.2 遗传算法的改进3.2.1 自适应遗传算法3.2.2 模拟退火算法3.2.3 遗传模拟退火算法3.3 本章小结第四章 遗传模拟退火算法在自动测试上的运用4.1 面向路径的测试用例4.1.1 面向路径的测试用例设计4.1.2 面向路径的测试用例分析4.2 基于覆盖率的测试方法4.2.1 基于覆盖率的测试用例设计4.2.2 基于覆盖率的测试用例分析4.3 本章小结第五章 马尔科夫链模型在自动测试上的运用5.1 马尔科夫链概述5.2 马尔科夫链模型组成5.3 马尔科夫链与软件测试5.3.1 马尔科夫链使用模型的构建5.3.2 马尔科夫链使用模型参数分析5.3.3 马尔科夫链使用模型与测试覆盖5.3.4 马尔科夫链使用模型自动生成测试用例5.3.5 马尔科夫链使用模型测试用例生成分析5.4 本章小结第六章 高科软件测试系统原型6.1 测试工具工作原理6.2 模型转移矩阵自动生成模块6.3 遗传算法与模型转移矩阵连接模块6.4 遗传算法测试用例生成模块6.5 利用测试工具生成的一个实例6.6 本章小结第七章 论文总结7.1 本文的工作7.2 未来的工作致谢参考文献个人简历、在学期间的研究成果及发表的学术论文
相关论文文献
标签:测试数据自动生成论文; 面向路径的测试论文; 遗传算法论文; 马尔科夫链使用模型论文;