论文部分内容阅读
作为保证软件质量、提高软件可靠性的重要手段,软件测试在软件开发过程中起着不可替代的作用,而测试数据生成则是测试阶段最关键的技术问题之一。目前已有许多测试数据自动生成的方法,但大多只涉及数值型测试数据的产生及选取原则,在实际应用中非数值型数据使用相当普遍,如字符串数据,这在一定程度上限制了软件测试技术的应用。因此,探讨如何实现非数值型软件测试数据的自动生成,有着很现实的意义。 遗传算法是一种模仿生物遗传和进化机制的最优化方法,它将基因的交叉、变异、重组等概念引入到算法的求解过程中。目前,遗传算法已逐渐运用到软件测试数据生成中。 本文提出了一种基于遗传算法的非数值型软件测试数据自动生成的方法,定义了路径适应度函数和字符适应度函数,并详细描述了测试数据生成过程。该方法能够根据程序执行路径上含有的谓词中的关系运算符,自动选用路径适应度函数或字符适应度函数,以指导给定路径的非数值型软件测试数据自动生成。同时,将该方法与文献[1]所述方法进行比较分析,并应用于部分程序的测试数据生成,实验结果表明:本文提出的方法具有较好的可行性和实际效果。