Effective Black-Box Testing with Genetic Algorithms

Black-box (functional) test cases are identified from functional requirements of the tested system, which is viewed as a mathematical function mapping its inputs onto its outputs. While the number of possible black-box tests for any non-trivial program is extremely large, the testers can run only a limited number of test cases under their resource limitations. An effective set of test cases is the one that has a high probability of detecting faults presenting ina computer program.In this paper, we introduce a new, computationally intelligent approach to automated generation of effective test cases based on a novel, Fuzzy-Based Age Extension of Genetic Algorithms (FAexGA). The basic idea is to eliminate "bad" test cases that are unlikely to expose any error, while increasing the number of "good" test cases that have a high probability of producing an erroneous output. The promising performance of the FAexGA-based approach is demonstrated on testing a complex Boolean expression.

[1]  Yasmin H. Said 13 - On Genetic Algorithms and their Applications , 2005 .

[2]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 2000, Springer Berlin Heidelberg.

[3]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 1992, Artificial Intelligence.

[4]  Gregory Tassey,et al.  Prepared for what , 2007 .

[5]  Mark Last,et al.  A fuzzy-based lifetime extension of genetic algorithms , 2005, Fuzzy Sets Syst..

[6]  Abraham Kandel,et al.  The data mining approach to automated software testing , 2003, KDD '03.

[7]  L. Magdalena,et al.  Genetic Fuzzy Systems : A Tutorial , 1997 .

[8]  Gregg Rothermel,et al.  Prioritizing test cases for regression testing , 2000, ISSTA '00.

[9]  Abraham Kandel,et al.  Using Data Mining For Automated Software Testing , 2004, Int. J. Softw. Eng. Knowl. Eng..

[10]  Will Venters,et al.  Software engineering: theory and practice , 2006 .

[11]  Ron Patton,et al.  Software Testing , 2000 .

[12]  Zbigniew Michalewicz,et al.  Parameter control in evolutionary algorithms , 1999, IEEE Trans. Evol. Comput..

[13]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[14]  Rodolfo Alfredo Bertone,et al.  Software engineering: Theory and practice, 2nd Edition. Shari Lawrence Pfleeger. Prentice Hall, 2001 , 2005 .

[15]  Colin R. Reeves,et al.  Using Genetic Algorithms with Small Populations , 1993, ICGA.

[16]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 1996, Springer Berlin Heidelberg.

[17]  R. Ruthen The Frustrations of a Quark Hunter , 1992 .

[18]  Siegfried Gottwald,et al.  Fuzzy Sets and Fuzzy Logic , 1993 .

[19]  Zbigniew Michalewicz,et al.  GAVaPS-a genetic algorithm with varying population size , 1994, Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence.

[20]  George J. Klir,et al.  Fuzzy sets and fuzzy logic - theory and applications , 1995 .

[21]  Paul Jorgensen,et al.  Software Testing: A Craftman's Approach , 2001 .

[22]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[23]  Dorothea Heiss-Czedik,et al.  An Introduction to Genetic Algorithms. , 1997, Artificial Life.

[24]  Paul C. Jorgensen Software Testing: A Craftsman''s Approach. Second Edition, CRC Press , 2002 .

[25]  Paul C. Jorgensen,et al.  Software Testing: A Craftsman's Approach , 1995 .

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

[27]  Bogdan Korel,et al.  Black-box test reduction using input-output analysis , 2000, ISSTA '00.

[28]  Kalyanmoy Deb,et al.  Understanding Interactions among Genetic Algorithm Parameters , 1998, FOGA.

[29]  Dan Boneh,et al.  On genetic algorithms , 1995, COLT '95.

[30]  Gregg Rothermel,et al.  Prioritizing test cases for regression testing , 2000, ISSTA '00.

[31]  Zbigniew Michalewicz,et al.  Parameter Control in Evolutionary Algorithms , 2007, Parameter Setting in Evolutionary Algorithms.

[32]  Abraham Kandel Automated Test Reduction Using an Info-Fuzzy Network , 2003 .

[33]  Francisco Herrera,et al.  Genetic Algorithms and Soft Computing , 1996 .