Combining Non Revisiting Genetic Algorithm and Neural Network to Generate Test Cases for White Box Testing

Software testing consumes 50% of the total expenditure done on the overall software. Cost of the testing phase is generally high due to heavy manual intervention. Many steps have been made in literature to reduce the cost of the phase by replacing existing manual work with automatic process. For example, manual test case generation is replaced by automatic test generation. A number of search methods exist in literature to automate test generation process in which Genetic Algorithm based approaches are very popular. A number of papers have been proposed in literature to show the use of GA to generate suitable test data for given software for desired adequacy criteria. Although GA is very effective in searching good test cases yet it has some inherent weaknesses. For example application of Simple Genetic algorithm may generate redundant test data in upcoming generation. This requires additional effort and expenditure without adding any value to the desired objective. This problem can be eliminated if non-revisiting GA is used in place of simple GA. GA also use fitness of various test cases to judge when to finished searching. At present this fitness evaluation is done by a human being hence it is a costly affair. This work can be automated by replacing a human being with a neural network. This paper proposes a combination of neural network and genetic algorithm to overcome the existing problems of automatic test data generation for white box testing.

[1]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[2]  Shiu Yin Yuen,et al.  A non-revisiting Genetic Algorithm , 2007, 2007 IEEE Congress on Evolutionary Computation.

[3]  Gary McGraw,et al.  Genetic algorithms for dynamic test data generation , 1997, Proceedings 12th IEEE International Conference Automated Software Engineering.

[4]  John A. Clark,et al.  An automated framework for structural test-data generation , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[5]  A. Jefferson Offutt,et al.  Constraint-Based Automatic Test Data Generation , 1991, IEEE Trans. Software Eng..

[6]  Wang Qing-hai Improvement on BP algorithm in artificial neural network , 2004 .

[7]  Irman Hermadi,et al.  GA-based multiple paths test data generator , 2008, Comput. Oper. Res..

[8]  Gilbert Syswerda,et al.  Uniform Crossover in Genetic Algorithms , 1989, ICGA.

[9]  James Miller,et al.  Automatic test data generation using genetic algorithm and program dependence graphs , 2006, Inf. Softw. Technol..

[10]  Boris Beizer,et al.  Software Testing Techniques , 1983 .

[11]  Kenneth A. De Jong,et al.  An Analysis of the Interacting Roles of Population Size and Crossover in Genetic Algorithms , 1990, PPSN.

[12]  Moheb R. Girgis,et al.  Automatic Test Data Generation for Data Flow Testing Using a Genetic Algorithm , 2005, J. Univers. Comput. Sci..

[13]  Yoichi Hayashi,et al.  Neural expert system using fuzzy teaching input and its application to medical diagnosis , 1994 .

[14]  James C. King,et al.  Symbolic execution and program testing , 1976, CACM.

[15]  Nashat Mansour,et al.  Data Generation for Path Testing , 2004, Software Quality Journal.

[16]  Eugenia Díaz,et al.  Automated software testing using a metaheuristic technique based on Tabu search , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[17]  J. David Schaffer,et al.  Proceedings of the third international conference on Genetic algorithms , 1989 .

[18]  Mary Jean Harrold,et al.  Using Genetic Algorithms to Aid Test-Data Generation for Data-Flow Coverage , 2007, 14th Asia-Pacific Software Engineering Conference (APSEC'07).

[19]  Gary McGraw,et al.  Generating Software Test Data by Evolution , 2001, IEEE Trans. Software Eng..

[20]  John A. Clark,et al.  Automated program flaw finding using simulated annealing , 1998, ISSTA '98.

[21]  W. Pitts,et al.  A Logical Calculus of the Ideas Immanent in Nervous Activity (1943) , 2021, Ideas That Created the Future.

[22]  Terence C. Fogarty,et al.  Varying the Probability of Mutation in the Genetic Algorithm , 1989, ICGA.

[23]  Larry J. Eshelman,et al.  Biases in the Crossover Landscape , 1989, ICGA.

[24]  Simeon C. Ntafos,et al.  An Evaluation of Random Testing , 1984, IEEE Transactions on Software Engineering.