基于分组与状态机的蜕变测试方法研究
发布时间:2020-05-28 18:52
【摘要】:软件测试是评估和保证软件质量的重要途径之一。构造预期输出问题(即Oracle问题)是软件测试工作中经常碰到的难题。蜕变测试技术通过判断程序的多个输入之间的关系及其对应的输出结果之间的关系来测试程序,而不需要构造预期输出,从而可以有效地解决Oracle问题。但是在实际的测试研究和工作中,普遍存在蜕变关系的构造难度大、测试效率低、蜕变关系针对性不强,测试成本高等缺点。本文通过对现有的蜕变测试方法进行优化,在一定程度上解决了测试效率低、蜕变关系针对性不强等方面的问题,主要的工作有:(1)在面向过程的软件测试方面,研究优化蜕变测试方法;(2)在面向对象的软件测试方面,研究基于状态机的蜕变测试优化方法;(3)研究测试覆盖准则并结合图的遍历算法,对提高软件测试效率提供新的思路。论文的主要成果如下。(1)研究面向过程软件测试中的Oracle问题。提出一种基于分组的蜕变测试优化方法,利用路径相似度对程序进行分组对软件测试进行研究。与传统的方法相比,本文提出的方法不仅能构造更多的蜕变关系,且蜕变关系在程序错误检测方面更加高效,能更迅速定位到程序的错误路径。以三角形面积计算程序为例进行分析,证明了本文提出的优化方法具有有效性和可用性。(2)研究面向对象软件测试中的测试优化方法。提出一种基于状态机的蜕变测试优化方法。利用状态机分析面向对象程序中的参数状态和转换关系,通过逐步构造部分状态的蜕变关系,直至满足全路径覆盖准则。与传统方法相比,本文提出的方法在满足全路径覆盖准则的前提下能获得更多的蜕变关系,且蜕变关系更具针对性,从而提高程序错误定位的效率与准确度。以温度控制系统程序为例进行分析,证明了本文提出的优化方法具有有效性。(3)研究探讨提高测试效率的新思路。针对实际测试工作中涉及到的遍历搜索问题,研究满足覆盖准则约束条件下的遍历搜索算法,通过广度优先覆盖测试与深度优先覆盖测试在常用的十个程序中的测试实验比较,发现广度有限覆盖测试能有效提高测试效率,为今后的实际测试工作提高工作效率提供了新的思路。
【学位授予单位】:中国舰船研究院
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP311.53
本文编号:2685672
【学位授予单位】:中国舰船研究院
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP311.53
【参考文献】
相关期刊论文 前7条
1 董国伟;聂长海;徐宝文;;基于程序路径分析的有效蜕变测试[J];计算机学报;2009年05期
2 董国伟;徐宝文;陈林;聂长海;王璐璐;;蜕变测试技术综述[J];计算机科学与探索;2009年02期
3 谢冰;张晨东;;一种基于面向对象测试模型的测试代码生成方法与工具[J];计算机研究与发展;2008年S1期
4 张懋;张茂林;杨海燕;柳永坡;;面向对象系统灰盒测试模型的研究与应用[J];计算机工程与设计;2007年15期
5 李康荣;;面向对象软件闭环测试模型探讨[J];计算机与信息技术;2006年09期
6 徐虹;面向对象的软件测试模型及策略研究[J];计算机与现代化;2005年03期
7 卢炎生,赵锦芸,谢晓东;基于状态的增量式类测试策略SITS[J];计算机工程与科学;2004年10期
,本文编号:2685672
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2685672.html