当前位置:主页 > 科技论文 > 软件论文 >

并行程序路径覆盖测试数据的协同进化生成方法

发布时间:2020-10-27 19:03
   随着近年来并行程序的广泛应用,并行程序的测试问题也逐渐被人们重视。其中,消息传递并行程序是一种常用的并行程序,这类程序的路径覆盖测试数据生成问题可以通过遗传算法进行求解。但是,传统方法没有充分利用并行程序调度序列提供的知识,导致算法效率难以满足需求。因此,改进并行程序的测试方法是十分必要的。针对这类问题,本文提出一种测试数据协同进化生成方法,并开发了相应原型系统,提高了测试效率。本文主要有以下内容:(1)提出了一种并行程序路径覆盖测试数据协同进化生成方法。首先,根据调度序列生成对应的种群;然后,给出种群与个体的性能评价方法;最后,依据种群与个体性能,在进化过程中执行个体迁移、种群消亡、种群合并等操作,生成测试数据。该方法与传统遗传算法相比,不但没有引入对调度序列人工分析等额外人工干预,提高了测试自动化程度,而且在生成测试数据的过程中使用多个调度序列,通过评价各调度序列生成测试数据的难易程度得到对应种群的性能,进化过程中将资源更多地分配给性能较好的种群,提高了算法效率。(2)开发了并行程序路径覆盖测试数据生成原型系统。该原型系统包括程序处理、进化求解和结果处理等3个模块,用于对程序执行前的预处理、使用所提方法进行进化求解,以及结果保存和输出等。进化求解模块是该原型系统的主要部分,使用C语言编写,主要包种群定义、种群初始化,以及种群迁移、种群消亡、种群合并、种群规模计算、适应值计算、编码、解码、选择、交叉、变异等函数。利用该原型系统能够针对不同程序使用本文所提方法自动高效生成测试数据,提高了测试效率。本文所提方法能够针对并行程序高效生成测试数据,对软件测试的发展做出了积极的贡献。
【学位单位】:中国矿业大学
【学位级别】:硕士
【学位年份】:2018
【中图分类】:TP311.53
【部分图文】:

序列,并行程序,消息传递,示例


图 2-1 一个消息传递并行程序的示例Figure 2-1 An example of the message-passing parallel program记被测程序为 P ,其第i 个进程为iP 。如果 P 有 n 个进程,那么, 可以表示为0 1 1{ , ,..., }nP P P P 。进程之间通过通信语句,即消息发送语句与消息接收语句,实现进程之间的通信。不确定通信语句是指消息发送或接收的目标进程不确定的通信语句。在执行程序时,由于这些语句在每次执行时的目标进程不一定相同,程序的执行状况也有所不同,这就是并行程序的不确定性。示例程序包含 4 个进程,记为0 1 2 3P {P , P , P , P}。该程序具有的 4 个调度序列如表 2-1 所示。表 2-1 调度序列Table 2-1 Scheduling sequence消息匹配调度序列04P05P012P013P1ss14P24P17P34P2ss

测程,原型系统,参数,进程


单点交叉与基本位变异,通过函数 cross1 ()与 mutation()来实现。4.4 原型系统的使用(The Usage of this Prototype System)以第 3 章表 3-1 所列的一个被测程序 Gcd 为例,说明使用该原型系统生成测试数据的主要流程。首先,进行程序分析,依据分析得到的进程数、输入个数、输入范围、调度序列信息等修改原型系统中相应的参数。在该原型系统中,由于针对不同被测程序需要经常性地修改这些参数,因此将这些参数使用#define 语句在程序开始部分进行定义,以便于快速简便地修改这些参数。接着,对程序进行插桩等处理,将处理后的程序添加到被测程序函数中,并指定目标路径。然后,使用编译器进行编译与链接,将生成的 exe 文件调入 MPICH 软件,设置进程数等相关参数后,执行程序。最后,MPICH 软件输出执行结果,测试人员可以根据结果记录相关信息或对程序进行进一步分析。该程序的一次执行结果如图 4-9 所示。
【参考文献】

相关期刊论文 前9条

1 冯俊池;于磊;;测试数据生成中遗传算法的改进[J];计算机辅助设计与图形学学报;2015年10期

2 巩敦卫;任丽娜;;回归测试数据进化生成[J];计算机学报;2014年03期

3 张岩;巩敦卫;;基于稀有数据扑捉的路径覆盖测试数据进化生成方法[J];计算机学报;2013年12期

4 田甜;巩敦卫;;消息传递并行程序路径覆盖测试数据生成问题的模型及其进化求解方法[J];计算机学报;2013年11期

5 眭俊华;张恩阳;;基于知识的智能测试集成技术研究[J];计算机应用;2006年07期

6 单锦辉,姜瑛,孙萍;软件测试研究进展[J];北京大学学报(自然科学版);2005年01期

7 刘璘琳,吴永英;一个CMM自评估系统的研究与开发[J];计算机工程;2004年16期

8 聂长海,徐宝文;基于接口参数的黑箱测试用例自动生成算法[J];计算机学报;2004年03期

9 王志言,刘椿年;区间算术在软件测试中的应用[J];软件学报;1998年06期



本文编号:2858922

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2858922.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户4010d***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com