Directed Search Based on Improved Whale Optimization Algorithm for Test Case Prioritization

Authors

  • Bin Yang China Unicom Research Institute, Beijing 100048, China
  • Huilai Li School of Artificial Intelligence Beijing University of Posts and Telecommunications, China
  • Ying Xing School of Artificial Intelligence Beijing University of Posts and Telecommunications, China
  • Fuping Zeng School of Reliability and Systems Engineering Beijing University of Aeronautics and Astronautics, China
  • Chengdong Qian Phytium Technology Co., Ltd., China
  • Youzhi Shen Phytium Technology Co., Ltd., China
  • Jiongbo Wang Phytium Technology Co., Ltd., China

DOI:

https://doi.org/10.15837/ijccc.2023.2.5049

Abstract

With the advent of the information age, the iterative speed of software update is gradually accelerating which makes software development severely limited by software testing. Test case prioritization is an effective way to accelerate software testing progress. With the introduction of heuristic algorithm to this task, the processing efficiency of test cases has been greatly improved. However, to overcome the shortcomings of slow convergence speed and easy fall into local optimum, the improved whale optimization algorithm is proposed for test case prioritization. Firstly, a model called n-dimensional directed search space is established for the swarm intelligence algorithm. Secondly, the enhanced whale optimization algorithm is applied to test case prioritization while the backtracking behavior is conducted for individuals when hitting the wall. In addition, a separate storage space for Pareto second optimization is also designed to filter the optimal solutions of the multi-objective tasks. Finally, both single-objective and multi-objective optimization experiments are carried out for open source projects and real-world projects, respectively. The results show that the improved whale optimization algorithm using n-dimensional directed search space is more conducive to the decisions of test case prioritization with fast convergence speed.

References

Minimol, A.J. (2021). Automating and optimizing software testing using artificial intelligence techniques, In International Journal of Advanced Computer Science and Applications, 12(05), 2021.

https://doi.org/10.14569/IJACSA.2021.0120571

Chen, Y. (2022). Analysis and application of software automated testing method, In Modern Industrial Economy and Informatization, 12(01), 167-168+171, 2022.

Mahdieh, M.; Mirian, H.S.H.; Mahdieh, M. (2022). Test case prioritization using test case diversification and fault-proneness estimations, In Automated Software Engineering, 29(02), 50, 2022.

https://doi.org/10.1007/s10515-022-00344-y

Rongcun, W.; Zhengmin, L.; Shujuan, J.; et al (2020). Regression test case prioritization based on fixed size candidate set ART algorithm, In International Journal of Software Engineering and Knowledge Engineering, 30(03), 291-320, 2020.

https://doi.org/10.1142/S0218194020500138

Lee, Y.S. (2022). A study on intermediate code generation for security weakness analysis of smart contract chaincode, In Journal of Logistics, Informatics and Service Science, 9(1), 53-67, 2022.

https://doi.org/10.14704/WEB/V19I1/WEB19318

Kim, J.A. (2022). A case study of domain engineering in software product line engineering, In Journal of Logistics, Informatics and Service Science, 9(1), 97-115, 2022.

Wong, W.; Horgan, J.; London, S.; et al (1997). A study of effective regression testing in practice, In The Eighth International Symposium On Software Reliability Engineering, 264-274, 1997.

Ani, R.; Sabrina, A.; Intan, E.A.J.; et al (2021). A systematic literature review on regression test case prioritization, In International Journal of Advanced Computer Science and Applications, 12(9), 253-267, 2021.

Geetha, U; Sankar, S.; Sandhya, M. (2021). Acceptance testing based test case prioritization, In Cogent Engineering, 8(1), 1-22, 2021.

https://doi.org/10.1080/23311916.2021.1907013

Elbaum, S.; Malishevsky, A. G.; Rothermel, G. (2002). Test case prioritization: A family of empirical studies, In Transactions on software engineering, 28(2), 159-182, 2002.

https://doi.org/10.1109/32.988497

Haiyan, Z.; Hui, F.; Qingsong, X.; et al (2008). Research on test case prioritization, In Computer Engineering and Science, 1(01), 79-81, 2008.

Li, Z.; Harman, M.; Hierons, R. (2007). Search algorithms for regression test case prioritization, In Transactions on Software Engineering, 33(4), 225-237, 2007.

https://doi.org/10.1109/TSE.2007.38

Dharmveer, K.Y.; Sandip, D. (2021). Test case prioritization based on early fault detection technique, In Recent Advances in Computer Science and Communications, 14(1), 302-316, 2021.

https://doi.org/10.2174/2213275912666190404152603

Stanujkic, D.; Karabasevic, D.; Popovic, G.; et al (2021). Multiple-criteria decision-making based on the use of single-valued neutrosophic sets and similarity measures, In Economic Computation And Economic Cybernetics Studies And Research, 55(2), 5-22, 2021.

https://doi.org/10.24818/18423264/55.2.21.01

Weixiang, Z.; Bo, W.; Huisen D. (2015). Test case prioritization method based on genetic algorithm, In Minicomputer System, 36(09), 1998-2002, 2015.

Hongwei, X.; Pengcheng, L.; Zhongxiao C.; et al (2021). Test case prioritization based on artificial immune algorithm, In Tehnički vjesnik, 28(6) , 1871-1876, 2021.

https://doi.org/10.17559/TV-20210311060442

Xue L.; Yunna, T.; Yuan, T. (2021). A survey of swarm intelligence methods, In Information and Computer (theoretical version), 33(24), 63-69, 2021.

Tole, K.; Milani, M.; Mwakondo, F. (2021). Particle swarm algorithm for improved handling of the mirrored traveling tournament problem, In Tehnički vjesnik, 28(5), 1647-1653, 2021.

https://doi.org/10.17559/TV-20200618162959

Liu, L.; Chen, T.; Gao, S.; et al (2021). Optimization of agricultural machinery allocation in heilongjiang reclamation area based on particle swarm optimization algorithm, In Tehnički vjesnik, 28(6), 1885-1893, 2021.

https://doi.org/10.17559/TV-20210427163416

Sabonchi, A.K.S.; Akay, B. (2021). Cryptanalysis of polyalphabetic cipher using differential evolution algorithm, In Tehnicki vjesnik-Technical Gazette, 27(4), 1101-1107, 2021.

https://doi.org/10.17559/TV-20190314095054

Vescan, A.; Pintea, C.M.; Pop, P.C. (2022). Test case prioritization-ANT algorithm with faults severity, In Logic Journal of the IGPL, 30(2), 277-288, 2022.

https://doi.org/10.1093/jigpal/jzaa061

Ying, X.; Xingde, W.; Shen, Q. (2021). Test case prioritization based on artificial fish school algorithm, In Computer Communications, 180, 295-302, 2021.

https://doi.org/10.1016/j.comcom.2021.09.014

Gouda, R.; Chandraprakash, V. (2022). Multi-objective crow search and fruit fly optimization for combinatorial test case prioritization, In International Journal of Software Innovation, 9(4), 1-19, 2022.

https://doi.org/10.4018/IJSI.289173

Anu, B.; Om, P. S. (2021). Test case prioritization using bat algorithm, In Recent Advances in Computer Science and Communications, 14(2), 593-598, 2021.

https://doi.org/10.2174/2213275912666190226154344

Manar, A.H.; Abdelzahir, A.; Souad, L.M.S.; et al (2022). Modified Harris hawks optimization based test case prioritization for software testing, In Computers, Materials & Continua, 72(1), 1951-1965, 2022.

https://doi.org/10.32604/cmc.2022.024692

Bajaj, A.; Sangwan, O.P. (2021). Discrete cuckoo search algorithms for test case prioritization, In Applied Soft Computing Journal, 110, 1-18, 2021.

https://doi.org/10.1016/j.asoc.2021.107584

Gandomi, A.H.; Yang, X.S. (2011). Benchmark problems in structural optimization, In Computation Optimization,Methods and Algorithms, 356, 259-281, 2011.

https://doi.org/10.1007/978-3-642-20859-1_12

Singh, S.; Bansal, J.C. (2022). Mutation-driven grey wolf optimizer with modified search mechanism, In Expert Systems With Applications, 194, 1-24, 2022.

https://doi.org/10.1016/j.eswa.2021.116450

Chunyao, L.; GuangLin, Z. (2021). A hybrid whale optimization algorithm for global optimization, In Mathematics, 9(13), 1477, 2021.

https://doi.org/10.3390/math9131477

Kezhong, L.; Zongmin, M. (2021). A modified whale optimization algorithm for parameter estimation of software reliability growth models, In Journal of Algorithms & Computational Technology, 15, 1-14, 2021.

https://doi.org/10.1177/17483026211034442

Jianxun, L.; Jinfei, S.; Fei, H.; et al (2022). A reinforced exploration mechanism whale optimization algorithm for continuous optimization problems, In Mathematics and Computers in Simulation, 201,23-48, 2022.

https://doi.org/10.1016/j.matcom.2022.04.033

Rothermel, G.; Untch, R.H.; Chu. C.; et al (1999). Test Case Prioritization, An Empirical Study, In International Conference on Software Maintenance, IEEE, 179-188, 1999.

https://doi.org/10.1109/ICSM.1999.792604

Muhammad, H.; Seung, R.J.; Muhammad, F.P.; et al (2021). An ontology based test case prioritization approach in regression testing, In Computers, Materials & Continua, 67(1), 1051-1068, 2021.

https://doi.org/10.32604/cmc.2021.014686

MohdShafie, M.L.; WanKadir, W.M.N.; Khatibsyarbini, M.; et al (2020). Model-based test case prioritization using selective and even-spread count-based methods with scrutinized ordering cri terion, In PloS one, 15(2), 1-27, 2020.

https://doi.org/10.1371/journal.pone.0229312

Li, Z.; Harman, M.; Hierons, R.M. (2007). Search algorithms for regression test case prioritization, In Transactions on Software Engineering, 33(4), 225-237, 2007.

https://doi.org/10.1109/TSE.2007.38

Li F.; Zhou, J.; Li, Y.; Hao, d. (2021). AGA: An Accelerated Greedy Additional Algorithm for Test Case Prioritization, In Transactions on Software Engineering, 48(12), 5102-5119, 2021.

Tizhoosh, H.R. (2005). Opposition-based learning, a new scheme for machine intelligence, In Int. Conf. Comput. Intell. Model, 1, 695-701, 2005.

Jianxun, L.; Shi, J.; Hao, F.; et al (2022). A novel enhanced global exploration whale optimization algorithm based on Lévy flights and judgment mechanism for global continuous optimization problems, In Engineering with Computers, 2022.

Huiling, C.; Chenjun, Y.; Ali, A.H.; et al (2020). An efficient double adaptive random spare reinforced whale optimization algorithm, In Expert Syst, 154, 113-118, 2020.

https://doi.org/10.1016/j.eswa.2019.113018

Awad, N.H.; Ali, M.Z.; Suganthan P.N.; et al (2016). Problem definitions and evaluation criteria, In The CEC 2017 Special Session and Competition on single-objective Real-Parameter Numerical Optimization, 1-34, 2016.

Software-artifact Infrastructure Repository. [Online]. Available, sir.csc.ncsu.edu/content/sir.php.

Hong, G. (2003). Comparison of immune algorithm with genetic algorithm, In Journal of Jinan University(Natural Science & Medicine Edition), 1(01), 22-25, 2003.

Arcuri, A.; Fraser, G. (2013). Parameter tuning or default values? An empirical investigation in search-based software engineering, In Empirical Software Engineering, 13(8), 594-623, 2013.

https://doi.org/10.1007/s10664-013-9249-9

Sayyad, A.S.; Goseva-Popstojanova, K.; Menzies, T. (2013). On parameter tuning in search based software engineering, A replicated empirical study, In 2013 3rd International Workshop on Replication in Empirical Software Engineering Research, 84-90, 2013.

https://doi.org/10.1109/RESER.2013.6

Dario, D.N.; Annibale, P.; Andy, Z.; Andrea, D.L. (2020). A Test Case Prioritization Genetic Algorithm Guided by the Hypervolume Indicator, In Transactions on Software Engineering, 46(6), 674-696, 2020.

https://doi.org/10.1109/TSE.2018.2868082

Additional Files

Published

2023-04-03

Most read articles by the same author(s)

Obs.: This plugin requires at least one statistics/report plugin to be enabled. If your statistics plugins provide more than one metric then please also select a main metric on the admin's site settings page and/or on the journal manager's settings pages.