基于EFSM的测试用例自动生成方法的研究
本文关键词:基于EFSM的测试用例自动生成方法的研究
更多相关文章: 软件测试 EFSM模型 测试用例自动生成 测试序列 分散搜索算法
【摘要】:信息技术的快速发展,软件产品越来越被应用到社会中的各个方面,但是,随之而出现的软件质量及安全问题阻碍着它的蓬勃发展。因此,保证软件质量已成为当今广大专家学者和工程人员的重点研究方向。软件测试一直以来都是确保软件质量和安全的重要措施。然而随着软件复杂性的加剧和软件规模的增加,软件测试已成为一种复杂、耗时的工作,为了降低软件测试在整个软件开发过程中的人力及物力开销,提高软件整体的质量和可靠性,软件测试的自动化技术已成为现如今亟须解决的问题。软件测试自动化技术其中的一个关键点就在于测试用例的自动生成。基于模型的测试是一种有效的软件测试方法,它可以有效地描述复杂软件系统的状态和行为。其中扩展有限状态机(Extend Finite State Machine,EFSM)是有限状态机(Finite State Machine,FSM)在原有的基础上,扩展上下文变量以及作用在上下文变量上的谓词条件和操作而来,因此,EFSM可以更加精确地描述软件系统的状态行为,被广泛应用于实际工程之中。但由于EFSM的复杂性,使得对EFSM模型进行测试用例自动生成这一过程更加复杂,因而仍然是一项攻坚难题。本文在已有的研究基础上对EFSM模型的测试用例自动生成方法进行了深入研究,主要包括以下几个方面:(1)由于EFSM模型本身是静态的,但是在测试过程中,必须使得EFSM模型能够根据输入变量得到执行,进而得到测试用例。本文采用UML建模的方法,利用SMC工具将EFSM模型转换为Java代码,结合图论的广度优先搜索算法使得静态EFSM模型具有动态执行能力,从而建立了EFSM的可执行模型。(2)本文在深入分析和研究了前人对于测试序列自动生成方法的基础上,将EFSM模型状态图转换为迁移图,进而采用改进广度优先搜索方法自动生成从初始迁移到达其他各个目标迁移的可行测试序列。在生成测试序列的过程中采用基于数据流和控制流的冲突检测方法来识别测试序列的冲突问题,然后,综合考虑测试序列长度和以及操作变量的类型,设计测试序列可行性度量方法定量分析测试序列的可行性与有效性。(3)根据前面获得的测试序列,本文深入分析和探讨了智能优化算法对于测试数据自动生成方面的有效性和高效性,重点介绍了遗传算法和分散搜索算法。进而针对前面已经获得的从初始迁移到达其他各个迁移的测试序列,采用分散搜索算法进行测试数据的自动生成。本文设计并实施了一系列实验验证本文测试序列生成方法的有效性,然后将本文使用的分散搜索算法与遗传算法在测试数据自动生成方面进行比较,从而验证分散搜索算法的有效性。实验结果表明,本文提出的测试序列生成方法能够有效并且高效的生成可行测试序列,分散搜索算法对于测试数据的自动生成相比于遗传算法在本实验中更具有优势。
【关键词】:软件测试 EFSM模型 测试用例自动生成 测试序列 分散搜索算法
【学位授予单位】:浙江理工大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP311.53
【目录】:
- 摘要4-6
- Abstract6-10
- 第1章 绪论10-15
- 1.1 课题背景及其意义10-11
- 1.2 国内外研究现状11-13
- 1.2.1 测试序列自动生成的研究现状11-12
- 1.2.2 测试数据自动生成的研究现状12-13
- 1.3 主要研究内容和解决的主要问题13-14
- 1.4 论文的组织结构14-15
- 第2章 基于模型的软件测试技术15-22
- 2.1 软件测试理论基础15-17
- 2.2 基于模型的测试17-21
- 2.3 本章小结21-22
- 第3章 EFSM模型的测试序列自动生成方法设计22-33
- 3.1 EFSM模型相关描述22-23
- 3.1.1 EFSM模型部分术语及定义22-23
- 3.1.2 基于EFSM模型的测试覆盖准则23
- 3.2 模型转换23-25
- 3.3 EFSM的可执行模型建立25-27
- 3.4 EFSM模型的可执行路径生成描述27
- 3.5 测试序列生成与判定27-32
- 3.5.1 测试序列生成27-29
- 3.5.2 路径可行性分析29-32
- 3.6 本章小结32-33
- 第4章 EFSM模型的测试数据自动生成方法实现33-46
- 4.1 启发式搜索算法概述33-34
- 4.2 遗传算法34-38
- 4.2.1 遗传算法概述34-35
- 4.2.2 遗传算法的组成要素35-38
- 4.3 分散搜索算法38-41
- 4.3.1 算法介绍38
- 4.3.2 算法组成元素38-39
- 4.3.3 算法模板流程39-41
- 4.4 测试数据自动生成方法实现41-45
- 4.4.1 分散搜索算法实现细节41-43
- 4.4.2 测试数据生成的过程43-44
- 4.4.3 测试数据生成举例44-45
- 4.5 本章小结45-46
- 第5章 实验仿真设计与分析46-55
- 5.1 实验目标模型46-47
- 5.2 测试序列生成方法的有效性47-52
- 5.2.1 实验设计47
- 5.2.2 实验结果与分析47-52
- 5.3 测试数据生成方法的有效性52-54
- 5.3.1 实验设计52
- 5.3.2 实验结果与分析52-54
- 5.4 本章小结54-55
- 第6章 总结与展望55-57
- 6.1 论文总结55-56
- 6.2 未来工作展望56-57
- 参考文献57-60
- 致谢60-61
- 攻读学位期间的研究成果61
【相似文献】
中国期刊全文数据库 前10条
1 路晓丽;葛玮;陈新丽;郝克刚;;支持共享和复用的测试用例库系统的设计[J];计算机科学;2006年05期
2 胡珊;杨丰玉;张晔;刘琳岚;;基于测试项抽取的测试用例复用方法[J];微电子学与计算机;2010年01期
3 张德平;查日军;;划分测试用例选择的风险决策方法[J];计算机应用研究;2010年12期
4 杨翊;陈挺;许峥;;证券软件的测试用例设计充分性实践[J];中国证券期货;2012年07期
5 张智轶;陈振宇;徐宝文;杨瑞;;测试用例演化研究进展[J];软件学报;2013年04期
6 杨悦;秦湘河;杨永安;郭荣;;航天测控软件测试用例标准及应用研究[J];无线电工程;2013年09期
7 王侃,卢庆龄,彭艳丽;测试用例自动生成的链方法研究与实现[J];装甲兵工程学院学报;2001年03期
8 李顺华;测试用例管理方法探讨[J];飞航导弹;2001年05期
9 徐仁佐,陈斌,陈波,吴闽泉,熊忠伟;构造面向对象软件可复用测试用例的模式研究[J];武汉大学学报(理学版);2003年05期
10 陈绍英;金成姬;;性能测试用例[J];程序员;2004年11期
中国重要会议论文全文数据库 前10条
1 王道堂;林春哲;张凯;;软件测试用例构造方法与手段[A];计算机技术在工程建设中的应用——第十二届全国工程建设计算机应用学术会议论文集[C];2004年
2 李磊;曹先彬;;基于进化的软件测试用例生成方法[A];2005年“数字安徽”博士科技论坛论文集[C];2005年
3 徐李勤;王洁宁;;基于层次有色Petri网的软件测试用例选取研究[A];全国第二届信号处理与应用学术会议专刊[C];2008年
4 林春哲;张凯;王道堂;;软件测试用例设计分析[A];计算机技术在工程建设中的应用——第十二届全国工程建设计算机应用学术会议论文集[C];2004年
5 张侠影;李志蜀;;一种优化的测试用例约简方法[A];2008'中国信息技术与应用学术论坛论文集(一)[C];2008年
6 张德平;聂长海;徐宝文;;划分测试用例选择策略研究[A];第五届中国测试学术会议论文集[C];2008年
7 郭从颖;;场景驱动测试用例设计及其测试自动化技术研究[A];中国计量协会冶金分会2008年会论文集[C];2008年
8 郭从颖;;场景驱动测试用例设计及其测试自动化技术研究[A];2008全国第十三届自动化应用技术学术交流会论文集[C];2008年
9 周晓燕;李兵;潘伟丰;覃叶宜;;基于错误传播概率网络的软件回归测试用例选择[A];第五届全国复杂网络学术会议论文(摘要)汇集[C];2009年
10 万琳;张威;马雪雁;陈曼青;;基于路径的测试用例自动生成技术[A];第十届全国容错计算学术会议论文集[C];2003年
中国重要报纸全文数据库 前6条
1 深圳市信息无障碍研究会 戴杰;“听”软件的IT工程师[N];人民政协报;2014年
2 谢敏 沈雪芳 戴金龙;解决软件测试的近忧和远虑[N];计算机世界;2005年
3 计算机世界实验室 韩勖;拨云见日[N];计算机世界;2008年
4 《网络世界》记者 郑楠;ONF测试步伐有条不紊[N];网络世界;2014年
5 ;找错[N];计算机世界;2002年
6 信息产业部软件与集成电路促进中心 于明邋唐仕武;驶入测试“快车道”[N];计算机世界;2007年
中国博士学位论文全文数据库 前10条
1 罗玲;扩展π演算的建模、验证与测试[D];西安电子科技大学;2015年
2 王志强;基于模糊测试的漏洞挖掘及相关攻防技术研究[D];西安电子科技大学;2015年
3 李丽;航天相机主控软件测试用例自动生成技术的研究[D];中国科学院研究生院(长春光学精密机械与物理研究所);2010年
4 黄如兵;组合测试用例的自适应随机生成与优先级排序方法研究[D];华中科技大学;2013年
5 张娟;软件测试中测试用例复用的研究[D];上海大学;2012年
6 游亮;回归测试用例选择技术研究[D];华中科技大学;2012年
7 谢晓东;基于模型比较的软件测试用例生成方法研究[D];华中科技大学;2007年
8 李根;基于动态测试用例生成的二进制软件缺陷自动发掘技术研究[D];国防科学技术大学;2010年
9 邢颖;测试用例自动生成的分支限界算法及实验研究[D];北京邮电大学;2014年
10 钱思佑;图形用户界面测试中相关问题研究[D];中国科学技术大学;2010年
中国硕士学位论文全文数据库 前10条
1 田春艳;基于灰色关联逼近理想解方法的测试用例评价模型研究[D];昆明理工大学;2009年
2 唐海鹏;基于Additional策略回归测试用例优先级排序优化研究[D];西南大学;2015年
3 陈梦云;基于圈复杂度和调用次数的测试用例排序方法[D];上海师范大学;2015年
4 姚瑞超;广东电网测试用例自动生成工具的研究与设计[D];华南理工大学;2015年
5 张泽林;基于数据挖掘的软件多故障定位与分析技术[D];南京理工大学;2015年
6 邹炳松;嵌入式软件的图形化测试用例生成系统设计与实现[D];哈尔滨工业大学;2015年
7 李锦程;基于微信平台的医疗就诊系统设计与实现[D];哈尔滨工业大学;2015年
8 赵群;软件错误定位中的巧合正确性问题研究[D];哈尔滨工业大学;2015年
9 常龙辉;Web应用的测试用例优化生成与优先级技术[D];上海大学;2015年
10 王令赛;基于粒子群优化算法的测试用例生成技术研究[D];中国矿业大学;2015年
,本文编号:575165
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/575165.html