面向回归测试的测试数据扩增方法研究

来源 :西安邮电大学 西安邮电学院 | 被引量 : 4次 | 上传用户:bbshisegui
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
回归测试是指修改了程序后,需要重新进行测试来确保修改程序没有引入新的错误或导致原有程序产生错误,为确保软件的可靠性,软件在迭代开发的过程中通常需要进行多次回归测试。在回归测试的过程中,测试人员为了覆盖软件的修改和新增部分,需要对原有测试数据集进行扩增。与传统的测试数据生成技术相比,测试数据扩增技术在分析软件修改影响的基础上,针对软件变化产生新的测试数据,有效的提高了软件的测试效率。本文针对在回归测试中原有测试数据集往往难以满足新版本软件测试需求的问题,分别从面向行为和面向覆盖的角度阐述回归测试数据集扩增技术,并分析它们各自的适应场景;主要工作如下:1、面向行为的测试数据扩增技术;提出了一种基于谓词引导的测试数据集扩增方法,首先从原有的测试数据集中选择经过程序修改节点的测试数据作为初始测试数据集,并提取程序中的谓词信息;然后根据K-MEANS聚类算法的特性,以待覆盖的目标路径为虚拟中心点,根据已选择的测试数据集的谓词距离进行聚类划分;最后在随机生成的测试数据集中选取针对各个中心点的局部孤立的测试数据作为扩增数据,进而达到引导测试数据扩增的目的。2、面向覆盖的测试数据扩增技术;提出了一种基于自适应粒子群算法的回归测试数据集扩增方法,首先,根据原有测试数据在新版本程序上的穿越路径与目标路径的相似度,在原有的测试数据集中选择合适的测试数据,作为初始种群的进化个体;然后,利用初始测试数据的穿越路径与目标路径之间的不同子路径,确定造成两者路径偏离的输入分量;最后,根据路径相似度构建的适应度函数,利用自适应粒子群算法操作输入分量,生成新的测试数据。3、测试数据扩增任务的并行化;实现了一种基于Hadoop平台的测试数据集并行扩增方法,首先将待覆盖目标路径所对应的测试数据进行聚类分簇;然后根据MapReduce框架的生命周期,将测试数据集扩增任务进行分解,保持各个阶段之间的数据通信,最终提高测试数据集扩增的效率。4、开发了一个面向回归测试的测试数据扩增原型工具。最后,针对基准程序分别利用本论文提出的方法进行测试数据扩增,通过实验验证了本文扩增方法各自的有效性和适用场景。
其他文献
随着科学研究的发展,在各个研究领域都产生了数以拍(Petabyte)计的海量数据,比如基于地理位置坐标的空气质量信息,类似的这些数据都有自身的组织特点——多维数组模型结构。  
随着计算机技术,网络技术以及通信技术的快速发展和不断的融合,产生了许多新的应用环境。当人类社会步入二十一世纪,信息爆炸已经成为这个时代的显著特征,以虚拟互联网络为代表各
计算机网络技术的快速发展,推动了世界信息化进程,互联网上用户数量和网络业务量的增长,使人们对于网络的需求越来越大,对网络服务质量的要求也越来越苛刻。互联网数据流量的急剧
软件是几乎所有的基于计算机的系统中最昂贵的元素,因而,一个复杂的软件项目,可能会因工作量估算的误差而出现软件项目延期、质量不能得到保证、甚至项目失败等严重后果,这对开发
电能,已成为人类社会赖以生存和发展不可或缺的一种重要能源,人类几乎所有的活动都与电有密切的关系。随着科学技术的飞速发展和工业规模的不断扩大,一方面,电力用户对电能质
信息技术的发展为社会带来了革命性的变化。许多的多媒体技术为现在的研究带来了新的挑战和机遇。对数字产品版权保护、保证信息安全已是现代产权,版权保护和信息认证的核心问
目前,各行业普遍存在“信息孤岛”现象,造成系统之间数据难以共享。为打破这种局面,各大油田按照“六个统一”的原则积极构建数字油田,各行各业也在构建自己的数据仓库中心和
在当今社会,信息化手段成为了促进一个产业现代化建设的基础支撑。资源的信息化和信息资源在一个产业相关链条中的畅通传播和深度共享,以及为实现资源共享,该链条中各实体之间的
数字图像已经广泛的应用在人们的日常生活中,而图像处理技术却为图像信息安全提出了挑战。检测图像是否被恶意篡改、保证图像信息的完整与健壮成为人们的需求,而利用可感知的哈
当前信息领域的研究热点——云计算带动了整个商业模式的转变,延伸出了新的商业体系。对于终端用户来说,它宣告了低成本提供超级计算时代的到来,给用户、产业界及各国政府带来深