航空学报 > 2006, Vol. 27 Issue (5): 888-892

基于自组织神经网络的软件功能测试数据自动生成

傅博   

  1. 北京航空航天大学 工程系统工程系, 北京 100083
  • 收稿日期:2005-05-09 修回日期:2005-08-15 出版日期:2006-10-25 发布日期:2006-10-25

Automatic Software Functional Test Data Generation Based on Dynamic Self-organizing Neural Networks

FU Bo   

  1. Department of System Engineering of Engineering Technology, Beijing University of Aeronautics and Astronautics, Beijing 100083, China
  • Received:2005-05-09 Revised:2005-08-15 Online:2006-10-25 Published:2006-10-25

摘要: 针对面向软件功能的测试数据自动生成问题,提出了一种动态自组织特征映射方法,用于生成揭示软件功能故障的测试数据(简称故障数据)。该方法主要有两部分组成,①采用具有全局多峰搜索特性的小生境遗传算法,在输入空间内搜索功能测试数据,生成少量的初始故障数据;②由初始故障数据,采用具有联想和分类能力的可变结构自组织特征映射,不断迭代生成大量相近而不同的故障数据,以便给开发者提供引发这些软件故障的信息,从而确定软件故障行为的模式或假设。用某型空空导弹发射控制软件进行了实验,运行结果表明了方法的有效性,故障数据生成效率高于遗传算法和随机法。

关键词: 软件测试, 自组织特征映射, 神经网络, 小生境遗传算法, 测试数据自动生成

Abstract: The automatic test data generation for program functions is one of the elementary problems in software functional testing. This paper addresses the problem by presenting a technique of dynamic self-organizing neural networks to automatically generate test data for revealing software faults. The technique consists of two parts: the first one is niche genetic algorithm, which generate a small initial fault test data set in software input domain; the second one is dynamic self-organizing feature map, which can repeatedly generate lots of test data for finding faults by using initial fault test data set. These can provide the developer with fault data information to identify fault patterns or hypothesis in software. The approach is used on a C program which is part of missile launch control system. Experimental results show that the method is more efficient than niche genetic algorithms and random techniques.

Key words: software test, self-organizing feature map, neural network, niche genetic algorithm, automatic test data generation

中图分类号: