An evaluation of Differential Evolution in software test data generation

One of the main tasks software testing involves is the generation of the test inputs to be used during the test. Due to its expensive cost, the automation of this task has become one of the key issues in the area. Recently, this generation has been explicitly formulated as the resolution of a set of constrained optimisation problems. Differential Evolution (DE) is a population based evolutionary algorithm which has been successfully applied in a number of domains, including constrained optimisation. We present a test data generator employing DE to solve each of the constrained optimisation problems, and empirically evaluate its performance for several DE models. With the aim of comparing this technique with other approaches, we extend the experiments to the Breeder Genetic Algorithm and face it to DE, and compare different test data generators in the literature with the DE approach. The results present DE as a promising solution technique for this real-world problem.

[1]  Rainer Storn,et al.  Differential Evolution Research – Trends and Open Questions , 2008 .

[2]  Kenneth V. Price,et al.  An introduction to differential evolution , 1999 .

[3]  Jing J. Liang,et al.  Problem Definitions and Evaluation Criteria for the CEC 2005 Special Session on Real-Parameter Optimization , 2005 .

[4]  Boris Beizer,et al.  Software testing techniques (2. ed.) , 1990 .

[5]  Xin Yao,et al.  Self-adaptive differential evolution with neighborhood search , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[6]  Heinz Mühlenbein,et al.  Optimization of Large Scale Parcel Distribution Systems by the Breeder Genetic Algorithm (BGA) , 1997, ICGA.

[7]  Ivan Zelinka,et al.  Mechanical engineering design optimization by differential evolution , 1999 .

[8]  Oscar Montiel,et al.  A Breeder Genetic Algorithm for Finite Impulse Filter Optimization , 2004, JCIS.

[9]  Marc Schoenauer,et al.  Constrained GA Optimization , 1993, ICGA.

[10]  Harmen-Hinrich Sthamer,et al.  The automatic generation of software test data using genetic algorithms , 1995 .

[11]  Carlos A. Coello Coello,et al.  Optimization with constraints using a cultured differential evolution approach , 2005, GECCO '05.

[12]  Tetsuyuki Takahama,et al.  Constrained Optimization by the ε Constrained Differential Evolution with Gradient-Based Mutation and Feasible Elites , 2006, 2006 IEEE International Conference on Evolutionary Computation.

[13]  José Antonio Lozano,et al.  Scatter Search in software testing, comparison and collaboration with Estimation of Distribution Algorithms , 2006, Eur. J. Oper. Res..

[14]  K. Deb An Efficient Constraint Handling Method for Genetic Algorithms , 2000 .

[15]  Carlos A. Coello Coello,et al.  Simple Feasibility Rules and Differential Evolution for Constrained Optimization , 2004, MICAI.

[16]  McMinnPhil Search-based software test data generation: a survey , 2004 .

[17]  Javier Tuya,et al.  Automated test data generation using a scatter search approach , 2009, Inf. Softw. Technol..

[18]  F. A. Seiler,et al.  Numerical Recipes in C: The Art of Scientific Computing , 1989 .

[19]  José Antonio Lozano,et al.  On The Performance Of Estimation Of Distribution Algorithms Applied To Software Testing , 2005, Appl. Artif. Intell..

[20]  Joachim Wegener,et al.  Evolutionary test environment for automatic structural testing , 2001, Inf. Softw. Technol..

[21]  Sigrid Eldh Software Testing Techniques , 2007 .

[22]  Heinz Mühlenbein,et al.  Predictive Models for the Breeder Genetic Algorithm I. Continuous Parameter Optimization , 1993, Evolutionary Computation.

[23]  Xin Yao,et al.  Handling Constraints for Search Based Software Test Data Generation , 2008, 2008 IEEE International Conference on Software Testing Verification and Validation Workshop.

[24]  Vitaliy Feoktistov,et al.  Differential Evolution: In Search of Solutions (Springer Optimization and Its Applications) , 2006 .

[25]  William H. Press,et al.  Numerical Recipes in FORTRAN - The Art of Scientific Computing, 2nd Edition , 1987 .

[26]  Uday K. Chakraborty,et al.  Advances in Differential Evolution , 2010 .

[27]  Amit Konar,et al.  Two improved differential evolution schemes for faster global search , 2005, GECCO '05.

[28]  J. Lampinen A constraint handling approach for the differential evolution algorithm , 2002, Proceedings of the 2002 Congress on Evolutionary Computation. CEC'02 (Cat. No.02TH8600).

[29]  Jing J. Liang,et al.  Problem Deflnitions and Evaluation Criteria for the CEC 2006 Special Session on Constrained Real-Parameter Optimization , 2006 .

[30]  Mark Harman,et al.  Empirical evaluation of a nesting testability transformation for evolutionary testing , 2009, TSEM.

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

[32]  Heinz Mühlenbein,et al.  The Equation for Response to Selection and Its Use for Prediction , 1997, Evolutionary Computation.

[33]  Alan K. Mackworth Consistency in Networks of Relations , 1977, Artif. Intell..