On Test Case Prioritization Using Ant Colony Optimization Algorithm

Test case prioritization technology improves the efficiency of software testing by optimizing the execution order of test cases, which is an important research topic of software regression testing. In order to solve the problem of requirement-based test case prioritization, this paper proposed a solution based on ant colony optimization algorithm and gave its two different implementation methods: distance-based and index-based implementation. Firstly, a general indicator based on requirements was designed to evaluate the test cases. Secondly, the concept of test case attractivity was proposed, and the definition of the distance between test cases was given based on it. Finally, the main design strategies such as the pheromone update strategy, the optimal solution update strategy, and the local optimal mutation strategy were given. The experimental results show that the method has good global optimization ability, and its overall effect is better than particle swarm optimization algorithm, genetic algorithm and random testing.

[1]  Dw Wang,et al.  智能优化方法 ; Intelligent Optimization Method , 2007 .

[2]  Marco Dorigo,et al.  Ant system: optimization by a colony of cooperating agents , 1996, IEEE Trans. Syst. Man Cybern. Part B.

[3]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[4]  Ching-Jong Liao,et al.  An ant colony optimization for single-machine tardiness scheduling with sequence-dependent setups , 2007, Comput. Oper. Res..

[5]  Chen Xiang,et al.  Survey of Test Case Prioritization Techniques for Regression Testing , 2013 .

[6]  Mark Harman,et al.  Pareto efficient multi-objective test case selection , 2007, ISSTA '07.

[7]  Zhigao Chen Application of Ant Colony Algorithm in Fingerprint Identification System Based on Internet of Things , 2012, ITCS 2012.

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

[9]  S. A. Sahaaya Arul Mary,et al.  Factor oriented requirement coverage based system test case prioritization of new and regression test cases , 2009, Inf. Softw. Technol..

[10]  Mark Harman,et al.  Search Algorithms for Regression Test Case Prioritization , 2007, IEEE Transactions on Software Engineering.

[11]  Bo Qu,et al.  Test Case Prioritization Based on Test Suite Design Information: Test Case Prioritization Based on Test Suite Design Information , 2009 .

[12]  Paolo Tonella,et al.  Using the Case-Based Ranking Methodology for Test Case Prioritization , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[13]  Joseph Robert Horgan,et al.  A study of effective regression testing in practice , 1997, Proceedings The Eighth International Symposium on Software Reliability Engineering.

[14]  Thomas Stützle,et al.  MAX-MIN Ant System , 2000, Future Gener. Comput. Syst..

[15]  Mark Harman,et al.  Regression testing minimization, selection and prioritization: a survey , 2012, Softw. Test. Verification Reliab..

[16]  Bo Qu,et al.  Test Case Prioritization Based on Varying Testing Requirement Priorities and Test Case Costs , 2007, Seventh International Conference on Quality Software (QSIC 2007).

[17]  Pengfei Shi,et al.  An improved ant colony algorithm for fuzzy clustering in image segmentation , 2007, Neurocomputing.

[18]  Léon J. M. Rothkrantz,et al.  Ant-Based Load Balancing in Telecommunications Networks , 1996, Adapt. Behav..

[19]  Zhang Shou-chun Improved ant colony algorithm based on natural selection strategy for solving TSP problem , 2013 .