基于多目标演化算法的测试程序生成
Test Program Generation Based on Multi-objective Evolutionary Algorithm
-
摘要: 针对现有的演化测试程序方法只以覆盖率为优化目标的问题, 提出一种使用多目标演化算法的测试程序生成方法.该方法把测试程序生成归结为多目标优化问题, 以提高覆盖率和减少模拟执行周期作为优化目标;根据模拟器反馈回的信息, 使用多目标演化算法来自动引导生成新的测试程序.使用该方法对北大众志UniCore32-2微处理器进行实验的结果表明, 在保证覆盖率指标的前提下, 采用文中方法生成的测试程序模拟执行时间是现有方法的12.92%, 是手写测试程序集的3.62%.Abstract: Existing test program evolution method uses single coverage metric to evaluate test programs in evolution process, and it can not guarantee the execution time index of the optimal solution. To cope with the problem, this paper proposes a test program generation approach based on multi-objective evolutionary algorithm (MOEA). It considers test program generation as a multi-objective optimization problem and both increasing coverage and reducing execution time are optimization goals. Through analyzing the feedback information from the simulator and using MOEA technology, it can automatically guide the direction of the new test generation. Experimental results on PKUnity UniCore32-2 microprocessor demonstrated that the optimal test program generated by the proposed method guaranteed the coverage requirements, was 12.92% of the traditional test program evolution method and 3.62% of hand-written test program set in execution time.