A Genetic Algorithm based Approach for Test Data Generation in Basis Path Testing

Software Testing is a process to identify the quality and reliability of software, which can be achieved through the help of proper test data. However, doing this manually is a difficult task due to the presence of number of predicate nodes in the module. So, this leads towards a problem of NP-complete. Therefore some intelligence-based search algorithms have to be used to generate test data. In this paper, we use a soft computing based approach, genetic algorithm to generate test data based on the set of basis paths. This paper combines the characteristics of genetic algorithm with test data, making use of the merits of respective global and local optimization capability to improve the generation capacity of test data. This automated process of generating test data optimally helps in reducing the test effort and time of a tester. Finally, the proposed approach is applied for ATM withdrawal task. Experimental results show that genetic algorithm was able to generate suitable test data based on a fitness value and avoid redundant data by optimization.

[1]  Su Na,et al.  Automatic Test Data Generation for Path Testing Using Genetic Algorithms , 2011, 2011 Third International Conference on Measuring Technology and Mechatronics Automation.

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

[3]  Lori A. Clarke,et al.  A System to Generate Test Data and Symbolically Execute Programs , 1976, IEEE Transactions on Software Engineering.

[4]  E. F. Miller,et al.  Automated generation of testcase datasets , 1975, Reliable Software.

[5]  C. V. Ramamoorthy,et al.  On the Automated Generation of Program Test Data , 1976, IEEE Transactions on Software Engineering.

[6]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[7]  Lawrence Davis,et al.  A Hybrid Genetic Algorithm for Classification , 1991, IJCAI.

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

[9]  Mark Harman Automated Test Data Generation using Search Based Software Engineering , 2007, Second International Workshop on Automation of Software Test (AST '07).

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

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

[12]  Bogdan Korel,et al.  Automated Software Test Data Generation , 1990, IEEE Trans. Software Eng..

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

[14]  Jonathan A. Bauer,et al.  Test Plan Generation Using Formal Grammars , 1979, ICSE.

[15]  Abdul Rauf,et al.  Automated GUI Test Coverage Analysis Using GA , 2010, 2010 Seventh International Conference on Information Technology: New Generations.

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

[17]  Carlos Urias Munoz,et al.  Automatic Generation of Random Self-Checking Test Cases , 1983, IBM Syst. J..

[18]  Karl N. Levitt,et al.  SELECT—a formal system for testing and debugging programs by symbolic execution , 1975 .

[19]  Qian Wang,et al.  Automatic generation of test case based on GATS algorithm , 2009, 2009 IEEE International Conference on Granular Computing.

[20]  Norman R. Lyons,et al.  An automatic data generating system for data base simulation and testing , 1977, SIML.

[21]  James E. Rumbaugh,et al.  Object-Oriented Modeling and Design with UML , 2004 .

[22]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[23]  J. Richard Kane,et al.  ATLAS-An Automated Software Testing System , 1976, ICSE '76.

[24]  Jin-Cherng Lin,et al.  Automatic test data generation for path testing using GAs , 2001, Inf. Sci..

[25]  Phil McMinn,et al.  Search‐based software test data generation: a survey , 2004, Softw. Test. Verification Reliab..

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

[27]  Andris Zarins,et al.  SMOTL - A System to Construct Samples for Data Processing Program Debugging , 1979, IEEE Trans. Software Eng..

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

[29]  Tai-hoon Kim,et al.  Application of Genetic Algorithm in Software Testing , 2009 .

[30]  William E. Howden,et al.  Symbolic Testing and the DISSECT Symbolic Evaluation System , 1977, IEEE Transactions on Software Engineering.