主权项 |
一种优化的蚁群算法测试用例自动生成方法,包括:步骤1:扫描源程序,进行词法分析,获得变量表;步骤2:扫描源程序,进行语法分析,获得蚁后、小蚂蚁、终结蚁以及每只小蚂蚁对变量的影响信息,结合步骤1获得的变量表,构造蚂蚁变量表;步骤3:根据步骤1和2的扫描信息完善源程序,并根据蚂蚁变量表中的蚁后的信息进行蚁后插桩,记录桩信息;步骤4:根据蚁后的信息初始化每条路径信息素的值,并基于蚂蚁变量表,对每条路径的信息素进行累积操作以获得每条路径的路径信息素的结果值,根据路径信息素的结果值剔除不可能覆盖的路径,在剩余的路径里取一条路径作为当前测试路径;步骤5:根据当前测试路径的相关信息素,使用SOR迭代法构造初始测试用例作为当前的测试用例;步骤6:调用命令执行当前的测试用例,并将当前的测试用例的遍历情况写入日志文件,以便于指导信息素的变化;步骤7:根据步骤6的遍历情况,判断当前的测试用例是否能覆盖当前的测试路径,若能,则当前的测试用例可归入测试用例集,并选取下一条路径,并转入步骤5;若不能,则调整蚂蚁的信息素使生成的测试用例向更好地覆盖测试路径的方向变化,并根据调整后的蚂蚁的信息素生成新的测试用例,作为当前的测试用例,并转入步骤6,最后的测试用例集即为最后输出的测试用例。 |