Evolutionary algorithm with convergence speed controller for automated software test data generation problem

Software testing is an important process of software development. One of the challenges in testing software is to generate test cases which help to reveal errors. Automated software test data generation problem is hard because it needs to search the whole feasible area to find test cases covering all possible paths under acceptable time consumption. In this paper, evolutionary algorithm with convergence speed controller (EA-CSC) is presented for using the least test case overhead in solving automated test case generation problem. EA-CSC is designed as a framework which have fast convergence speed and capability to jump out of the local optimal solution over a range of problems. There are two critical steps in EA-CSC. The adaptive step size searching method accelerates the convergence speed of EA. The mutation operator can disrupt the population distribution and slows down the convergence process of EA. Moreover, the EA-CSC results are compared to the algorithms tested on the same benchmark problems, showing strong competitive.

[1]  John A. Clark,et al.  The Way Forward for Unifying Dynamic Test Case Generation: The Optimisation-based Approach , 1998 .

[2]  Francisco Herrera,et al.  A study on the use of non-parametric tests for analyzing the evolutionary algorithms’ behaviour: a case study on the CEC’2005 Special Session on Real Parameter Optimization , 2009, J. Heuristics.

[3]  Lionel C. Briand,et al.  A Systematic Review of the Application and Empirical Investigation of Search-Based Test Case Generation , 2010, IEEE Transactions on Software Engineering.

[4]  D. Jeya Mala,et al.  Automated software test optimisation framework - an artificial bee colony optimisation-based approach , 2010, IET Softw..

[5]  Chengying Mao,et al.  Adapting ant colony optimization to generate test data for software structural testing , 2015, Swarm Evol. Comput..

[6]  Michael R. Lyu,et al.  Achieving software quality with testing coverage measures , 1994, Computer.

[7]  I H Osman,et al.  Meta-Heuristics Theory and Applications , 2011 .

[8]  Xiangjuan Yao,et al.  Test Data Generation for Multiple Paths Based on Local Evolution , 2015 .

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

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

[11]  Gordon Fraser,et al.  Whole Test Suite Generation , 2013, IEEE Transactions on Software Engineering.

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

[13]  Abdelhamid Bouchachia,et al.  An Immune Genetic Algorithm for Software Test Data Generation , 2007, 7th International Conference on Hybrid Intelligent Systems (HIS 2007).

[14]  Gregory Gay,et al.  The Risks of Coverage-Directed Test Case Generation , 2015, IEEE Transactions on Software Engineering.

[15]  Dirk Sudholt,et al.  Design and analysis of different alternating variable searches for search-based software testing , 2015, Theor. Comput. Sci..

[16]  Yue Shi,et al.  A modified particle swarm optimizer , 1998, 1998 IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98TH8360).