Providing a Method for the Optimal Detection of Software Testing Paths Using Meta-Algorithms

Document Type : Original Article

Authors

-

Abstract

Throughout the history of software engineering, the existence of software defects at the heart of a system and lack of proper treatment before operational use has always led to serious personal and financial      disasters. A test that can provide an appropriate coverage at the code-level of software can prevent many of these incidents. The basis path test is considered as the strongest coverage criterion in the white software box test. The prerequisite for a basis path testing is to have a set of test paths. The greater the number of test paths to be scanned, the greater the amount of software source code that will be covered and so more software holes will be discovered. As a result, a basic challenge before running a software path test is to produce the maximum test paths that can be scrolled. So far, some work has been done to maximize the number of scrollable test paths, including the GSO method, but the results indicate that the number of test paths can be greater than currently achieved. In this paper we have proposed a method to achieve this goal by a hybrid solution based on two evolutionary genetic and birds algorithms. The results of evaluations show that using the proposed solution has led to an increase in the number of scrollable test paths up to 91% comparing with the GSO method.
 

Keywords


S. Saurabh Srivastava, “Optimal Path Sequencing in Basic Path Testing,” International Journal of Advanced Computational Engineering and Networking, vol. 1, no. 1, pp. 2320-2106, 2013##.
A. Moheb and R. Girgis, “Automatic Data Flow Test Paths Generation using the Genetical Swarm Optimization Technique,” International Journal of Computer Applications, vol. 1, pp. 975 – 8887, 2015##.
D. Sanjay Singla, “A Hybrid PSO Approach to Automate Test Data Generation for Data Flow Coverage with Dominance Concepts,” International Journal of Advanced Science and Technology, vol. 37, 2011##.
Z. Li, “Breading software test data with Genetic-Particle swarm mixed Algorithms,” Journal of computers, pp. 258-265, 2010##.
C. Juang, “A hybrid of genetic algorithm and particle swarm optimization for recurrent network design,” IEEE transactions on systems management and cybernetics, pp. 997-1006, 2004##.
W. F. Lammermann, “Using evolutionary algorithms for unit testing of object oriented software,” ACM, 2005##.
Y. Dong, “Automatic Generation of Software Test Cases Based on Improved Genetic Algorithm,”       IEEE-International Conference on Multimedia Technology, pp. 227-230, 2011##.
J. Kennedy, “Particle Swarm Optimization,” in IEEE International Conference on Neural Networks, 1995##.
A. S. Ghiduk, “Automatic generation of basis test paths using variable length genetic algorithm,” Information Processing Letters, no. 114, pp. 304–316, 2014##.
Y. Srivatsava, “Optimal test sequence generation using firefly algorithm,” Swarm and Evolutionary Computation, pp. 44-53, 2013##.
Y. XS, “Firefly algorithms for multimodal optimization,” in Proceedings fifth symposium on stochastic algorithms, foundations and applications, 2009##.
R. Srivastava, “An Approach of Optimal Path Generation using Ant Colony Optimization,” IEEE, 2009##.
S. Andreas Windisch, “Applying Particle Swarm Optimization to Software Testing,” in Proceedings of the conference on Genetic and evolutionary computation, 2007##.
P. Srivastava, “Path Generation for Software Testing: A Hybrid Approach Using Cuckoo Search and Bat Algorithm,” Nature-Inspired Computing and Optimization, pp. 409-424, 2017##.
 
M. Ahmed and S. Ghiduk, “Using genetic algorithms and dominance concepts for generating reduced test data,” Informatica, pp. 377–385, 2010##.
G. Michael, “Generating software test data by evolution,” IEEE Trans. Softw. Eng., pp. 1085–1110, 2001##.
M. Pargas, “Test data generation using genetic algorithms,” J. Softw. Test. Verif. Reliabil, pp. 263–282, 1999##.
M. Girgis, “Automatic test data generation for data flow testing using a genetic algorithm,” J. Univers. Comput. Sci., pp. 898–915, 2005##.
J. Diza, “A tabu search algorithm for structural software testing,” J. Comput. Oper. Res., pp. 3052–3072, 2008##.