Metaheuristics for Multi Criteria Test Case Prioritization for Regression Testing
Keywords:Software testing, Regression testing, Test case prioritization, Particle swarm optimization, Bat algorithm
Under the constraints of project deliveries, it is too costly to frequency run a large number of test cases. Test case prioritization is needed to rank the test cases. The prioritization must be done in such way that it is able to detect maximum number of faults in available time. Though many test case prioritization techniques have been proposed they have not considered the risk is skipping the test cases. This work solves the test case prioritization or test case subset selection as a multi criteria optimization problem. A meta heuristics algorithm in proposed in this work combining Particle swarm optimization (PSO) with Bat algorithm is proposed to solve the problem of finding best subset of regression test cases with multi objectives of reducing risk in skipping test cases, maximizing the number of faults within the constraints of time
T. K. Akila and M. Arunachalam, Test case prioritization using modified genetic algorithm and ant colony optimization for regression testing, "International Journal of Advanced Technology and Engineering Exploration," 9 (88), pp. 384–400, 2022.
U. Dash and A. A. Acharya, A systematic review of test case prioritization approaches, 2022, pp. 653–666.
Z. C. Demir and Ş. Emrah Amrahov, Dominating set-based test prioritization algorithms for regression testing, "Soft Computing," 26 (17), pp. 8203–8220, 2022.
M. Qasim, A. Bibi, S. J. Hussain, N. Z. Jhanjhi, M. Humayun, N. U.Sama, Test case prioritization techniques in software regression testing: An overview, "International Journal of Advanced and Applied Sciences," 8 (5), pp. 107–121, 2021.
G. Rothermel and M. J. Harrold, A safe, efficient regression test selection technique, "ACM Transactions on Software Engineering and Methodology," 6 (2), pp. 173–210, 1997.
M. J. Harrold and A. Orso, Retesting software during development and maintenance, "Proceedings of the 2008 Frontiers of Software Maintenance, FoSM 2008," pp. 99–108, 2008.
P. Tonella, P. Avesani, and A. Susi, Using the case-based ranking methodology for test case prioritization, "IEEE International Conference on Software Maintenance, ICSM," pp. 123–132, 2006.
B. Jiang, Z. Zhang, W. K. Chan, and T. H. Tse, Adaptive random test case prioritization, in 2009 IEEE/ACM International Conference on Automated Software Engineering, 2009, pp. 233–244.
T. Zhang, X. Wang, D. Wei, and J. Fang, Test case prioritization technique based on error probability and severity of uml models, "International Journal of Software Engineering and Knowledge Engineering," 28 (06), pp. 831–844, 2018.
Z. Li, M. Harman, and R. M. Hierons, Search algorithms for regression test case prioritization, "IEEE Transactions on Software Engineering," 33 (4), pp. 225–237, 2007
X. Zhang, T. Y. Chen, and H. Liu, An application of adaptive random sequence in test case prioritization, in Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE, 2014, pp. 126–131.
X. Zhang, X. Xie, and T. Y. Chen, Test case prioritization using adaptive random sequence with category-partition-based distance, in 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), 2016, pp. 374–385.
S. Eghbali and L. Tahvildari, Test case prioritization using lexicographical ordering, "IEEE Transactions on Software Engineering," 42 (12), pp. 1178–1195, 2016.
J. Chen et al., Test case prioritization for object-oriented software: An adaptive random sequence approach based on clustering, "Journal of Systems and Software," 135, pp. 107–125, 2018.
L. Zhang, S.-S. S. Hou, C. Guo, T. Xie, and H. Mei, Time-aware test-case prioritization using integer linear programming, "Proceedings of the 18th International Symposium on Software testing and analysis - ISSTA '09," pp. 213–223, 2009.
R. Wang, Z. Li, S. Jiang, and C. Tao, Regression test case prioritization based on fixed size candidate set ART algorithm, "International Journal of Software Engineering and Knowledge Engineering," 30 (3), pp. 291–320, 2020.
V. Debroy and W. E. Wong, On the estimation of adequate test set size using fault failure rates, "Journal of Systems and Software," 84 (4), pp. 587–602, 2011.
F. Palma, T. Abdou, A. Bener, J. Maidens, and S. Liu, An improvement to test case failure prediction in the context of test case prioritization, in Proceedings of the 14th International Conference on Predictive Models and Data Analytics in Software Engineering, Oct. 2018, pp. 80–89.
O. I. Oduntan and P. Thulasiraman, Hybrid metaheuristic algorithm for clustering, "Proceedings of the 2018 IEEE Symposium Series on Computational Intelligence, SSCI 2018," pp. 1–9, 2019.
M. Abdel-Basset, L. Abdel-Fatah, and A. K. Sangaiah, Metaheuristic algorithms: a comprehensive review, in Computational Intelligence for Multimedia Big Data on the Cloud with Engineering Applications, Elsevier, 2018, pp. 185–231.
P. A. Vikhar, Evolutionary algorithms: A critical review and its future prospects, in 2016 International Conference on Global Trends in Signal Processing, Information Computing and Communication (ICGTSPICC), Dec. 2016, pp. 261–265.
R. E. Neapolitan and X. Jiang, Swarm intelligence, in artificial intelligence, Chapman and Hall/CRC, 2018, pp. 377–385.
T. Herlambang, D. Rahmalia, and T. Yulianto, Particle swarm optimization (PSO) and ant colony optimization (ACO) for optimizing PID parameters on autonomous underwater vehicle (AUV) control system, "Journal of Physics: Conference Series," 1211 (1), 2019.
How to Cite
Copyright (c) 2022 Journal of Computers, Mechanical and Management
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
The Journal of Computers, Mechanical and Management applies the CC Attribution- Non-Commercial 4.0 International License to its published articles. While retaining copyright ownership of the content, the journal permits activities such as downloading, reusing, reprinting, modifying, distributing, and copying of the articles, as long as the original authors and source are appropriately cited. Proper attribution is ensured by citing the original publication.