论文部分内容阅读
随着计算机科学技术的飞速发展,软件的功能越来越强大,人们对软件质量和可靠性的要求也越来越高。软件测试是软件开发过程中的不可缺少的部分,为软件质量和可靠性提供保障。随着软件复杂度的上升,软件测试的难度越来越大,需要消耗大量的人力、物力和时间。测试数据生成是软件测试的一个关键环节,自动化的测试数据生成方法可以有效的提高测试效率、降低软件开发成本。本文首先介绍了软件测试的基本概念和测试技术的分类,分别介绍了几种常用的基于规约的测试方法和基于程序的测试方法。对现有的各种面向路径的测试生成方法进行总结和分析,并详细描述了基于各种智能算法的测试数据生成方法的原理和流程,分析其优缺点。重点深入研究粒子群优化算法,分析粒子群算法的复杂度和收敛性。并在吸引排斥粒子群算法的基础上,引入新的种群多样性度量指标和排斥操作,提出了改进的吸引排斥粒子群算法(MARPSO),并通过基准测试函数验证其收敛性能。结合爬山算法高效的局部收敛能力和MARPSO算法的全局最优搜索能力,提出了引入爬山算法的MARPSO算法(HC-MARPSO),并将其应用于测试数据生成中。构造了该测试数据生成方法的模型框架,并以三角形判别程序为例进行仿真实验,与基本粒子群算法和遗传算法做比较。结果表明基于HC-MARPSO算法的测试数据生成方法有较高的效率。