基于SA规则的全路径用例自动生成方法研究

来源 :华中师范大学 | 被引量 : 0次 | 上传用户:waiwai123456789
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
测试用例是软件测试技术中的核心角色,测试用例的人工生成不能满足现代软件开发的需要,使得测试用例自动生成成为研究热点。在测试用例自动生成方法中,有基于规格说明和基于结构两种生成的方法。人工智能技术:粒子群优化算法、遗传算法、BP神经网络算法、混沌理论等也被用于对测试用例自动生成的研究。路径测试是白盒测试中覆盖强度最强的测试,因此基于结构的路径测试用例自动生成一直受人关注。目前,对单路径测试用例自动生成方法的研究较多,在文献中采用了最常见的单路径测试用例自动生成方法,如:随机法、动态法和符号执行法等。全路径是程序的所有可能路径,如果能对程序的所有可能的路径都进行测试则称为全路径测试,单个函数中全路径测试的优点是:测试不需指定路径,因为指定路径本身就比较麻烦;全路径的测试用例覆盖了该程序的所有可执行路径,比较全面的测试了程序的可行路径;对于庞大的程序结构进行人工的穷举路径不可取,因此如何设计出一种基于全路径的搜索方法对实际应用具有重大意义、在论文中以单个函数的全路径为背景,研究测试用例自动生成的方法。本文设计了一个基于SA (Source Analysis)规则的全路径测试用例自动生成系统的框架。这个框架主要由:初始化组件、程序解析组件、优化组件和结果分析组件四部分组成。论文对程序解析组件和优化组件的功能和算法实现进行了较详细地讨论。程序解析组件的工作主要有两个:一是对测试目标进行静态解析,主要着重于源程序的语义分析和语法分析;二是运用SA规则对源程序进行逐行解析,按照关键字分析程序的结构并插装相应的节点,插装的目的是记录执行的语句,得到有向无负权图和插装后的目标函数。SA规则中制定了构造源程序的有向无负权图的方案,有向无负权图可以排除源程序的回路,简化源程序中的路径。优化组件的工作主要有三个:一是不重复路径集的获取,在有向无负权图上搜索所有不重复的路径,并且存放到不重复的路径集合中;二是将初始化的测试数据放到插装后的源程序中执行,得到测试数据的实际执行路径;三是计算已执行路径的相似度,在本工作中,制定了使用粒子群优化算法选择测试用例集的方案。若满足预先设定的阈值,则此组测试数据即为较为合适本程序的测试用例,若不满足,则继续使用粒子群算法进行调整。本文通过一个具体的测试用例自动生成的例子,证明基于SA规则的全路径测试用例自动生成方法是可行的。
其他文献
功能核磁共振成像技术以其无创性、高空间分辨率给人类研究大脑提供了很多的便利。随着核磁共振的发展,它被越来越多地用于医疗和科学研究。目前国内外对于脑部fMRI数据的研
为处理模糊信息,1965年Zadeh 提出了Fuzzy 集理论,之后Fuzzy 集理论得到不断发展和完善,并成功应用于数据挖掘领域,相应的基于Fuzzy 集理论的数据挖掘算法研究较多并运用于实际工
计算机系统的能量消耗在全球的所有耗能设备中占据着举足轻重的地位,功耗成为企业和用户选购计算机的一个重要参考因素。龙芯计算机采用我国自主研制的龙芯处理器生产而成,其
软件测试在软件开发过程中是一个极其重要的环节,但是软件测试本身却是一个过程复杂、耗时耗力且具有较高重复性的工作。为了提高软件测试的效率人们开发了多种适用于软件生
随着信息技术的发展,新型的数据流模型出现在数据挖掘领域中,这使得该领域的发展出现了新的挑战。由于数据流的动态性,使得已有的针对静态数据的成熟挖掘技术无法对这种连续
随着社会对信息化的要求越来越高,嵌入式技术获得了更广阔的发展空间。嵌入式技术的发展促使各种智能移动设备广泛的应用到社会的各个方面,而PDA(Personal Digital Assistant
多网接入平台支持GSM/TD-SCDMA/TD-LTE等多网络信号覆盖,同时提供宽带接入到桌面RRU(Remote Radio Unit:射频拉远单元)模式接入,其硬件结构不同于传统的直放站,因此现有直放
人脸识别技术因具有重要的科学意义和实用价值,在近几年得到了研究者的高度重视,成为当前模式识别和人工智能领域的一个研究热点。它可以广泛地应用到安全部门、身份鉴别、电
网格是一种新型的分布式计算技术,网格充分利用互连网络中现有的软硬件资源,支持广域环境上的计算、数据、存储、信息和资源共享,消除信息孤岛,协同解决大型应用问题,以较低
无线传感器网络是一种由数量庞大的微型传感器节点构成的网络系统,这项技术逐渐成为各个国家科研机构的重点研究对象。该技术具有十分广阔的应用前景,有权威杂志和媒体就评价