Abstract
Software testing and retesting occurs continuously during the software development lifecycle to detect errors as early as possible. As the software evolves the size of test suites also grows. When the no of test cases generated are more, obviously size of the test suite will also be more. So the testing time is to be minimized by reducing the execution time of the algorithm used for test data generation and also by introducing minimization procedure for test suite reduction. Due to limited resources and timing constraints for testing, test suite minimization techniques are needed to eliminate redundant test cases as possible. By considering multiple objectives rather than the coverage alone, the test cases are being generated which satisfies the testing requirements. Most of the existing techniques are code-based. In this article we present an approach by modifying an existing heuristic for test suite minimization. Genetic algorithm has been used for random test data generation and the output of GA is given to the minimization procedure for reducing the total no of generated test cases, collectively named as Hybrid Algorithm (HA). The results are satisfactory and show significant improvements in reducing test suite size with minimum execution time. Experiments have been done for simple to medium complexity java programs taken from SIR and execution time is reduced to 5,685ms for a test set. The results are compared with existing method Mutant Gene Algorithm and size of test suite is minimized upto 13.6% using Hybrid Algorithm.
Highlights
Software testing involves identifying the test cases which detect errors in the program
Over several versions of software development, some test cases in the test suite may become redundant with respect to the testing requirements; these are satisfied by other test cases in the suite that were added to cover modifications in the later versions of software
The data taken for result analysis includes both c++ and java programs that are given in the data set
Summary
Software testing involves identifying the test cases which detect errors in the program. Genetic algorithms solve many search and optimization problems, effectively. The optimized test vector is generated, which enhances the fault coverage and improve the global search. In order to generate optimized set of test cases, genetic algorithm is used so that more number of faults can be detected with the minimum number of test cases. The main advantage of evolutionary algorithms, when applied to solve multi-objective optimization problems, is the fact that they typically optimize sets of solutions, allowing computation of an approximation of the entire Pareto front in a single algorithm run. Minimization of test suites may result in significant fault detection loss. Minimization procedures have to be developed by considering the objectives like maximize fault coverage, minimizing no of test cases, maximizing condition coverage, minimize execution time, minimize cost, and so on simultaneously.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: INTERNATIONAL JOURNAL OF COMPUTERS & TECHNOLOGY
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.