用于测试用例生成的遗传算法改进

来源 :西南大学 | 被引量 : 0次 | 上传用户:caoda0512116
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着软件行业的迅速发展,人们对软件质量的要求越来越高,如何评价和保证软件的质量成为一个急需解决的问题。软件测试随之产生,然而传统的软件测试基本都是由人工完成,随着当今的软件规模逐渐增长,造成工作量巨大,测试困难。因此,如何快速的进行测试和降低测试成本,成为软件测试的关键所在。鉴于工作量巨大和人为操作失误等因素,人们想到自动化软件测试方法,而进行自动化测试的关键之一就是测试用例生成的自动化,如今这一研究方向逐渐成为热点。遗传算法作为一种模拟自然界进化过程的随机搜索算法,具有内在的隐并行性和良好的全局寻优能力,能够自适应的调整搜索方向和指导优化搜索空间。因此被人们应用于测试用例的自动生成中。而遗传算法一些固有的缺点,如收敛速度较慢,容易形成早熟收敛,局部搜索能力较弱,且容易受参数的影响。而适应度函数和遗传算子是影响测试用例生成效率的关键。因此,如何对适应度函数和遗传算子进行改进,提高测试用例生成的效率和质量,成为测试用例自动化生成的关键。针对遗传算法在生成测试用例时的缺点,本文对分支函数插桩法得到的适应度函数进行了加权变换,设计了加权变化的适应度函数变换方法,然后设计了适应性变异算子、取反交叉算子和有效交叉点算子,以提高算法的全局搜索能力。本文主要针对如何使用遗传算法对测试用例进行生成这一问题就行探讨。首先,本文对遗传算法在生成测试用例时的缺点进行了分析,进而对传统测试用例生成方法进行了分析,然后对遗传算法的基本理论进行了详尽论述,分析了将遗传算法与测试用例生成相结合的理论依据。然后,提出了改进后的遗传算法用于测试用例生成时的设计方法。最后,本文将传统遗传算法和改进后的遗传算法(IGA)与测试用例生成相结合,利用三角形判定程序对二者生成测试用例效果进行了分析。实验表明,相比传统遗传算法,改进后遗传算法在测试用例生成方面,具有更高的时效性,能在一定程度上避免了算法的早熟收敛。
其他文献
近年来,随着互联网的迅速发展,人们萌发了使用互联网收看电视的想法。而机顶盒(STB)作为一种集计算机、电视和电信技术为一体的高科技产品,正逐渐将电脑的功能集成到了电视,成为
无线Ad-Hoc网络是由一组带有无线通信收发设备的移动节点组成的多跳、临时、无中心的自治系统,是一种不需要基础设施、可以在任何地点任何时刻迅速构建的移动自组织网络。网络
气象数值预报,是一个与科技民生息息相关的领域,随着气象卫星技术的不断进步,得到的资料也越来越丰富,气象数值预报也从依赖专业人员的经验,转而利用各类图像处理技术,使结果
即时通信(Instant Messaging, IM)系统是随着Internet发展起来的一种网络应用系统,人们通过它可以方便快捷的进行实时交流,如在线交谈、传递文件、及视频会议等。随着移动互
动作捕捉数据具有冗杂度高、数量级大、特征维度高等特点,使得动作捕捉数据在检索时耗费时间较长。本文提出一种基于哈希学习的高效编码和快速检索算法以达到在大规模动作捕
随着社会的不断发展,工业制造水平的不断提高,工业制造目标已经不仅仅是大批量的标准化的工业零部件,而更多是小批量富有个性的生活用品和艺术品。比如最近火热的3D打印技术,
随着嵌入式技术的不断发展,嵌入式系统被应用到了社会的各个领域。加载和引导操作系统内核、开发相关设备驱动、固化软件等是嵌入式系统开发的首要任务。板级支持包(Board Sup
大规模地形及森林绘制一直是虚拟现实领域应用较多的两个方向,而且也一直是图形学研究领域的两个热点。另外,大规模地形绘制与大规模森林绘制在模型表示及绘制算法上有一定的
随着大数据处理技术的不断发展,分布式流处理系统也在越来越多的数据处理应用中发挥作用。云计算的飞速发展也使得许多中小企业和研究人员能够通过租用的形式享受集群带来的
随着云计算技术近几年的迅速发展,Hadoop这种处理大规模密集型数据的云计算平台受到国内外大型IT公司、社交网络、全球各大通信运营商等的广泛关注及应用。Hadoop系统可部署在