论文部分内容阅读
随着软件规模的不断扩大,人们变得越来越重视保证软件的质量和可靠性。软件测试是保证软件质量和可靠性的必要手段,软件测试研究领域的核心内容之一是测试用例生成方法。如何通过自动生成方法获取测试用例,降低软件测试成本,是一个非常值得研究的问题。目前有多种自动生成测试用例的技术,利用进化算法进行有效测试用例生成是目前这一领域研究中的一个热点,其中包括遗传算法和粒子群优化算法,它们具有较好的优化能力,但它们仍有其不足之处。
本文介绍了基于JUnit的测试用例自动生成系统框架及其相关技术。针对被测类和方法的不同情况,分析了相应的处理方式。本文提出了一种基于遗传-粒子群混合算法的测试用例自动生成方法,避免了传统遗传算法容易产生早熟收敛和粒子群算法容易陷入局部最优解的不足。在Eclipse开发环境下实现了基于遗传-粒子群混合算法的测试用例生成系统原型。以几个典型程序为例,在静态分析和程序插装的基础上,使用本文提出的算法生成了测试用例,然后多次运行程序并给出实验分析结果。仿真实验表明与遗传算法相比,混合算法迭代次数与时间花费更少,与粒子群算法相比,提高了全局搜索能力。