Abstract
Software quality is becoming a momentous challenge in software engineering processes, and software testing has a pivotal role in its measurements. Nature-inspired metaheuristic methods play an essential role in software testing, in which various studies have been conducted in this field; however, due to a lack of wide-ranging papers reviewing these methods, conducting a comprehensive systematic review to examine an array of crucial mechanisms in this field has become a necessity. This study aims to present a detailed analysis and taxonomically classifies the metaheuristic methods inspired by nature. This paper compromises a systematic literature review of 65 chosen studies published between 2015 and 2022. Genetic algorithm-based, hybrid, ant colony optimization-based, cuckoo search-based, firefly algorithm-based, artificial bee colony-based, and other metaheuristic methods constitute this systematic study’s stratification. Evaluation methods, applied tools, merits, and demerits of each reviewed article are investigated. Additionally, future directions and open issues are addressed. This conducted paper not only expounds on software testing strengths, open issues, and future works, but also recognizes the quest for optimizing the insufficient metrics in software testing, such as mutation score, complexity, and scalability, which would be the propulsion of the testing process if consummated.











Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Data availability
Enquiries about data availability should be directed to the authors
Notes
References
Abkenar SB, Kashani MH, Akbari M, Mahdipour E (2020) Twitter spam detection: a systematic review. arXiv:201114754
Afzal W, Alone S, Glocksien K, Torkar R (2016) Software test process improvement approaches: a systematic literature review and an industrial case study. J Syst Softw 111:1–33
Aghdam ZK, Arasteh B (2017) An efficient method to generate test data for software structural testing using artificial bee colony optimization algorithm. Int J Software Eng Knowl Eng 27:951–966
Ahmadi Z, Haghi Kashani M, Nikravan M, Mahdipour E (2021) Fog-based healthcare systems: a systematic review. Multim Tools Appl 80:36361–36400
Ahmed BS, Abdulsamad TS, Potrus MY (2015) Achievement of minimized combinatorial test suite for configuration-aware software functional testing using the cuckoo search algorithm. Inf Softw Technol 66:13–29
Alkawaz MH, Silvarajoo A (2019) A survey on test case prioritization and optimization techniques in software regression testing. In: 2019 IEEE 7th conference on systems, process and control (ICSPC), pp 59–64
Alsariera YA, Majid MA, Zamli KZ (2015) SPLBA: an interaction strategy for testing software product lines using the Bat-inspired algorithm. In: 2015 4th international conference on software engineering and computer systems (ICSECS), pp 148–153
Alyahya S (2020) Crowdsourced software testing: a systematic literature review. Inf Softw Technol 127:106363
Anand S, Burke EK, Chen TY, Clark J, Cohen MB, Grieskamp W, Harman M, Harrold MJ, Mcminn P, Bertolino A (2013) An orchestrated survey of methodologies for automated software test case generation. J Syst Softw 86:1978–2001
Anbu M, Anandha Mala GS (2019) Feature selection using firefly algorithm in software defect prediction. Clust Comput 22:10925–10934
Antelman K, Bakkalbasi N, Goodman D, Hajjem C, Harnad S (2005) Evaluation of algorithm performance on identifying OA
Arasteh B, Hosseini SMJ (2022) Traxtor: an automatic software test suit generation method inspired by imperialist competitive optimization algorithms. J Electron Test 38:205–215
Asoudeh N, Labiche Y (2018) Life sciences-inspired test case similarity measures for search-based, FSM-based software testing. In: Pierantonio A, Trujillo S (eds) Modelling foundations and applications. Springer International Publishing, Cham, pp 199–215
Baby B and Banu S (2019) Enhanced security for dynamic multi keyword ranked search using greedy best first search
Bahaweres RB, Zawawi K, Khairani D and Hakiem N (2017) Analysis of statement branch and loop coverage in software testing with genetic algorithm. In: 2017 4th international conference on electrical engineering, computer science and informatics (EECSI), pp 1–6, IEEE
Bahrampour A, Rafe V (2021) Using memetic algorithm for robustness testing of contract-based software models. Artif Intell Rev 54:877–915
Barbosa G, de Souza ÉF, dos Santos LBR, da Silva M, Balera JM, Vijaykumar NL (2022) A systematic literature review on prioritizing software test cases using Markov chains. Inf Softw Technol 147:106902
Barr ET, Harman M, McMinn P, Shahbaz M, Yoo S (2014) The oracle problem in software testing: a survey. IEEE Trans Software Eng 41:507–525
Basili VR (1989) Software development: a paradigm for the future. In: Proceedings of the thirteenth annual international computer software & applications conference. IEEE, pp 471–485
Bazzaz Abkenar S, Haghi Kashani M, Mahdipour E, Jameii SM (2021) Big data analytics meets social media: A systematic review of techniques, open issues, and future directions. Telematics Inform 57:101517
Bellman R (1966) Dynamic programming. Science 153:34–37
Betts KM, Petty MD (2016) Automated search-based robustness testing for autonomous vehicle software. Model Simul Eng 2016:5309348
Bharathi M, Sangeetha V (2018) Weighted rank ant colony metaheuristics optimization based test suite reduction in combinatorial testing for improving software quality. In: 2018 second international conference on intelligent computing and control systems (ICICCS). IEEE, pp 525–534
Bianchi L, Dorigo M, Gambardella LM, Gutjahr WJ (2009) A survey on metaheuristics for stochastic combinatorial optimization. Nat Comput 8:239–287
Biswas S, Kaiser MS, Mamun S (2015) Applying ant colony optimization in software testing to generate prioritized optimal path and test data. In: 2015 international conference on electrical engineering and information communication technology (ICEEICT). IEEE, pp 1–6
Bluemke I, Malanowska A (2021) Software testing effort estimation and related problems: a systematic literature review. ACM Comput Surv 54:Article 53
Boisvert RF, Cools R and Einarsson B (2005) Assessment of accuracy and reliability, in Accuracy and reliability in scientific computing pp 13–32, SIAM.
Boopathi M, Sujatha R, Kumar CS and Narasimman S (2014) The mathematics of software testing using genetic algorithm, in Proceedings of 3rd International Conference on Reliability, Infocom Technologies and Optimization pp 1–6, IEEE.
Boopathi M, Sujatha R, Kumar CS, Narasimman S, Rajan A (2019) Markov approach for quantifying the software code coverage using genetic algorithm in software testing. International Journal of Bio-Inspired Computation 14:27–45
Brereton P, Kitchenham BA, Budgen D, Turner M, Khalil M (2007) Lessons from applying the systematic literature review process within the software engineering domain. J Syst Softw 80:571–583
Burnstein I, Suwanassart T and Carlson R (1996) Developing a testing maturity model for software test process evaluation and improvement, in Proceedings International Test Conference 1996 Test and Design Validity pp 581–589, IEEE.
Carpenter BE and Doran R (1986) AM Turing's ACE report of 1946 and other papers, Massachusetts Institute of Technology.
Charette RN (2005) Why software fails [software failure]. IEEE Spectr 42:42–49
Chen Y and Sun X-H (2006) Stas: A scalability testing and analysis system, in 2006 IEEE International Conference on Cluster Computing pp 1–10, IEEE.
Collins E, Dias-Neto A and de Lucena Jr VF (2012) Strategies for agile software testing automation: An industrial experience, in 2012 IEEE 36th Annual Computer Software and Applications Conference Workshops pp 440–445, IEEE.
Dadkhah M, Araban S, Paydar S (2020) A systematic literature review on semantic web enabled software testing. J Syst Softw 162:110485
Damia A, Esnaashari M and Parvizimosaed M (2021) Automatic Web-Based Software Structural Testing Using an Adaptive Particle Swarm Optimization Algorithm for Test Data Generation, in 2021 7th International Conference on Web Research (ICWR) pp 282–286.
Dasgupta D, Ji Z and Gonzalez F (2003) Artificial immune system (AIS) research in the last five years, in The 2003 Congress on Evolutionary Computation, 2003 CEC'03 pp 123–130, IEEE.
Dasoriya R and Dashoriya R (2018) Use of Optimized Genetic Algorithm for Software Testing, in 2018 IEEE International Students' Conference on Electrical, Electronics and Computer Science (SCEECS) pp 1–5, IEEE.
Devika Rani Dhivya and Mee-nakshi (2018)" in the text and Tables 17 and 18 is inactive. Dhivya DR, K and Meenakshi VS, (2018) An Optimized Adaptive Random Partition Software Testing by Using Bacterial Foraging Algorithm. In: Hemanth DJ, Smys S (eds) Computational Vision and Bio Inspired Computing. Springer International Publishing, Cham, pp 542–555
de Souza ÉF, Falbo RdA, Vijaykumar NL (2015) Knowledge management initiatives in software testing: A mapping study. Inf Softw Technol 57:378–391
Devika Rani Dhivya K, Meenakshi VS (2018) An Optimized Adaptive Random Partition Software Testing by Using Bacterial Foraging Algorithm. In: Hemanth DJ, Smys S (eds) Computational Vision and Bio Inspired Computing. Springer International Publishing, Cham, pp 542–555
Dhavakumar P, Gopalan NP (2021) An efficient parameter optimization of software reliability growth model by using chaotic grey wolf optimization algorithm. J Ambient Intell Humaniz Comput 12:3177–3188
Dorigo M and Di Caro G (1999) Ant colony optimization: a new meta-heuristic, in Proceedings of the 1999 congress on evolutionary computation-CEC99 (Cat No 99TH8406) pp 1470–1477, IEEE.
Esnaashari M, Damia AH (2021) Automation of software test data generation using genetic algorithm and reinforcement learning. Expert Syst Appl 183:115446
Esparcia-Alcázar AI, Almenar F, Vos TE, Rueda U (2018) Using genetic programming to evolve action selection rules in traversal-based automated software testing: results obtained with the TESTAR tool. Memetic Computing 10:257–265
Etemadi M, Bazzaz Abkenar S, Ahmadzadeh A, Haghi Kashani M, Asghari P, Akbari M, Mahdipour E (2023) A systematic review of healthcare recommender systems: Open issues, challenges, and techniques. Expert Syst Appl 213:118823
Fakhouri SN, Hudaib A, Fakhouri HN (2020) Enhanced Optimizer Algorithm and its Application to Software Testing. J Exp Theor Artif Intell 32:885–907
Fathi M, Haghi Kashani M, Jameii SM, Mahdipour E (2022) Big Data Analytics in Weather Forecasting: A Systematic Review. Archives of Computational Methods in Engineering 29:1247–1275
Ferrer J, Chicano F, Ortega-Toro JA (2021) CMSA algorithm for solving the prioritized pairwise test data generation problem in software product lines. Journal of Heuristics 27:229–249
Fuggetta A (2000) Software process: a roadmap, in Proceedings of the Conference on the Future of Software Engineering pp 25–34, ACM.
Galin D (2004) Software quality assurance: from theory to implementation, Pearson Education India.
Gao R and Xiong S (2015) A genetic local search algorithm for optimal testing resource allocation in module software systems, in International Conference on Intelligent Computing pp 13–23, Springer.
Garousi V, Felderer M, Hacaloğlu T (2017) Software test maturity assessment and test process improvement: A multivocal literature review. Inf Softw Technol 85:16–42
Garousi V, Küçük B (2018) Smells in software test code: A survey of knowledge in industry and academia. J Syst Softw 138:52–81
Garousi V, Mäntylä MV (2016) A systematic literature review of literature reviews in software testing. Inf Softw Technol 80:195–216
Ghaemi A and Arasteh B (2019) SFLA‐based heuristic method to generate software structural test data. Journal of Software: Evolution and Process:e2228.
Gillenson ML, Zhang X, Stafford TF and Shi Y (2018) A Literature Review of Software Test Cases and Future Research, in 2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) pp 252–256, IEEE.
Graham D, Van Veenendaal E and Evans I (2008) Foundations of software testing: ISTQB certification, Cengage Learning EMEA.
Gupta N, Sharma A and Pachariya MK (2020) Multi-objective test suite optimization for detection and localization of software faults. Journal of King Saud University - Computer and Information Sciences.
Haghi Kashani M, Mahdipour E (2023) Load Balancing Algorithms in Fog Computing. IEEE Trans Serv Comput 16:1505–1521
Haghi Kashani M, Madanipour M, Nikravan M, Asghari P, Mahdipour E (2021) A systematic review of IoT in healthcare: Applications, techniques, and trends. J Netw Comput Appl 192:103164
Haghi Kashani M, Rahmani AM, Jafari Navimipour N (2020) Quality of service-aware approaches in fog computing. Int J Commun Syst 33:e4340
Haraty RA, Mansour N, Zeitunlian H (2018) Metaheuristic Algorithm for State-Based Software Testing. Appl Artif Intell 32:197–213
Harman M, Jia Y and Zhang Y (2015) Achievements, Open Problems and Challenges for Search Based Software Testing, in 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST) pp 1–12.
Hema Shankari K, Mathivilasini S, Arasu D and Suseendran G (2021) Genetic Algorithm Based on Test Suite Prioritization for Software Testing in Neural Network, in Proceedings of First International Conference on Mathematical Modeling and Computational Science (Peng S-L, Hao R-X and Pal S eds) pp 409–416, Springer Singapore, Singapore.
Hill MD (1990) What is scalability? ACM SIGARCH Computer Architecture News 18:18–21
Hinson JM, Staddon J (1983) Hill-climbing by pigeons. J Exp Anal Behav 39:25–47
Holland JH (1992) Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence, MIT press.
Huo J, Xue B, Shang L and Zhang M (2017) Genetic Programming for Multi-objective Test Data Generation in Search Based Software Testing, in Australasian Joint Conference on Artificial Intelligence pp 169–181, Springer.
Isaksen U, Bowen JP, Nissanke N (1996) System and software safety in critical systems. The University of Reading, Whiteknights, United Kingdom
Jamil MA, Alhindi A, Arif M, Nour MK, Abubakar NSA and Aljabri TF (2019) Multiobjective Evolutionary Algorithms NSGA-II and NSGA-III for Software Product Lines Testing Optimization, in 2019 IEEE 6th International Conference on Engineering Technologies and Applied Sciences (ICETAS) pp 1–5.
Jamil MA, Arif M, Abubakar NSA and Ahmad A (2016) Software Testing Techniques: A Literature Review, in 2016 6th International Conference on Information and Communication Technology for The Muslim World (ICT4M) pp 177–182.
Jin C, Jin S-W (2016) Parameter optimization of software reliability growth model with S-shaped testing-effort function using improved swarm intelligent optimization. Appl Soft Comput 40:283–291
Kabir MN, Ali J, Alsewari AA and Zamli KZ (2017) An adaptive flower pollination algorithm for software test suite minimization, in 2017 3rd International Conference on Electrical Information and Communication Technology (EICT) pp 1–5, IEEE.
Karaboga D, Basturk B (2008) On the performance of artificial bee colony (ABC) algorithm. Appl Soft Comput 8:687–697
Karimi Y, Haghi Kashani M, Akbari M, Mahdipour E (2021) Leveraging big data in smart cities: A systematic review. Concurrency and Computation: Practice and Experience 33:e6379
Kashani MH and Sarvizadeh R (2011) A novel method for task scheduling in distributed systems using Max-Min Ant Colony Optimization, in 2011 3rd International Conference on Advanced Computer Control pp 422–426.
Kassaymeh S, Abdullah S, Al-Betar MA, Alweshah M (2022a) Salp swarm optimizer for modeling the software fault prediction problem. Journal of King Saud University - Computer and Information Sciences 34:3365–3378
Kassaymeh S, Al-Laham M, Al-Betar MA, Alweshah M, Abdullah S, Makhadmeh SN (2022b) Backpropagation Neural Network optimization and software defect estimation modelling using a hybrid Salp Swarm optimizer-based Simulated Annealing Algorithm. Knowl-Based Syst 244:108511
Kernighan BW, Plauger PJ (1976) Software tools. ACM SIGSOFT Software Engineering Notes 1:15–20
Khan R and Amjad M (2015) Automatic test case generation for unit software testing using genetic algorithm and mutation analysis, in 2015 IEEE UP Section Conference on Electrical Computer and Electronics (UPCON) pp 1–5, IEEE.
Khari M and Kumar P (2016) A novel approach for software test data generation using cuckoo algorithm, in Proceedings of the second international conference on information and communication technology for competitive strategies p 98, ACM.
Khari M, Kumar P (2019) An extensive evaluation of search-based software testing: a review. Soft Comput 23:1933–1946
Khatibsyarbini M, Isa MA, Jawawi DN, Hamed HNA, Suffian MDM (2019) Test Case Prioritization Using Firefly Algorithm for Software Testing. IEEE Access 7:132360–132373
Khuat TT, Le MH (2019) Binary teaching–learning-based optimization algorithm with a new update mechanism for sample subset optimization in software defect prediction. Soft Comput 23:9919–9935
Kitchenham B (2004) Procedures for performing systematic reviews. Keele, UK, Keele University 33:1–26
Koleejan C, Xue B and Zhang M (2015) Code coverage optimisation in genetic algorithms and particle swarm optimisation for automatic software test data generation, in 2015 IEEE Congress on Evolutionary Computation (CEC) pp 1204–1211, IEEE.
Koteswara Rao K, Raju G (2019) Reducing interactive fault proneness in software application using genetic algorithm based optimal directed random testing. Int J Comput Appl 41:296–305
Krishnanand K, Ghose D (2009) Glowworm swarm optimization for simultaneous capture of multiple local optima of multimodal functions. Swarm Intell 3:87–124
Kumar V, Sahni R (2020) Dynamic testing resource allocation modeling for multi-release software using optimal control theory and genetic algorithm. International Journal of Quality & Reliability Management 37:1049–1069
Li X, Wong WE, Gao R, Hu L, Hosono S (2018) Genetic algorithm-based test generation for software product line with the integration of fault localization techniques. Empir Softw Eng 23:1–51
Liu F, Huang H and Hao Z (2017) Evolutionary algorithm with convergence speed controller for automated software test data generation problem, in 2017 IEEE Congress on Evolutionary Computation (CEC) pp 869–875, IEEE.
Mahajan S, Joshi SD and Khanaa V (2015) Component-based software system test case prioritization with genetic algorithm decoding technique using java platform, in 2015 International Conference on Computing Communication Control and Automation pp 847–851, IEEE.
Mahmoud T, Ahmed BS (2015) An efficient strategy for covering array construction with fuzzy logic-based adaptive swarm optimization for software testing use. Expert Syst Appl 42:8753–8765
Malaiya YK, Li MN, Bieman JM, Karcich R (2002) Software reliability growth with test coverage. IEEE Trans Reliab 51:420–426
Malhotra R (2016) Empirical research in software engineering: concepts, analysis, and applications, Chapman and Hall/CRC.
Mäntylä MV, Adams B, Khomh F, Engström E, Petersen K (2015) On rapid releases and software testing: a case study and a semi-systematic literature review. Empir Softw Eng 20:1384–1425
Mao C, Xiao L, Yu X, Chen J (2015) Adapting ant colony optimization to generate test data for software structural testing. Swarm Evol Comput 20:23–36
Margineantu DD and Dietterich TG (1997) Pruning adaptive boosting, in ICML pp 211–218, Citeseer.
Matnei Filho RA and Vergilio SR (2015) A mutation and multi-objective test data generation approach for feature testing of software product lines, in 2015 29th Brazilian Symposium on Software Engineering pp 21–30, IEEE.
Mirjalili S, Mirjalili SM, Lewis A (2014) Grey wolf optimizer. Adv Eng Softw 69:46–61
Murty KG (1983) Linear programming, Chichester.
Myers GJ (2006) The art of software testing. John Wiley & Sons
Nadel BA (1989) Constraint satisfaction algorithms 1. Comput Intell 5:188–224
Nanthaamornphong A, Carver JC (2017) Test-Driven Development in scientific software: a survey. Software Qual J 25:343–372
Nawaz A and Malik KM (2008) Software testing process in agile development. Department of Computer Science School of Engineering Blekinge Institute of Technology Box 520 SE-372 25 Ronneby Sweden.
Nejad FM, Akbari R and Dejam MM (2016) Using memetic algorithms for test case prioritization in model based software testing, in 2016 1st Conference on Swarm Intelligence and Evolutionary Computation (CSIEC) pp 142–147, IEEE.
Nemati S, Haghi Kashani M and Faghih Mirzaee R (2023) Comprehensive Survey of Ternary Full Adders: Statistics, Corrections, and Assessments. IET Circuits, Devices & Systems n/a.
Nikravan M, Haghi Kashani M (2022) A review on trust management in fog/edge computing: Techniques, trends, and challenges. J Netw Comput Appl 204:103402
Nikravan M, Jameii SM, Kashani MH (2011) An intelligent energy efficient QoS-routing scheme for WSN. International Journal of Advanced Engineering Sciences and Technologies 8:121–124
Niu B and Wang H (2012) Bacterial colony optimization. Discrete Dynamics in Nature and Society 2012.
Ow PS, Morton TE (1988) Filtered beam search in scheduling. The International Journal of Production Research 26:35–62
Pan J (1999) Software reliability. Dependable Embedded Systems, Carnegie Mellon University 18:1–14
Potter B, McGraw G (2004) Software security testing. IEEE Secur Priv 2:81–85
Prabhakar N, Singhal A, Bansal A and Bhatia V (2019) A literature survey of applications of meta-heuristic techniques in software testing, in Software Engineering pp 497–505, Springer.
Rahimi M, Songhorabadi M, Kashani MH (2020) Fog-based smart homes: A systematic review. J Netw Comput Appl 153:102531
Raj HLP and Chandrasekaran K (2018) NEAT Algorithm for Testsuite generation in Automated Software Testing, in 2018 IEEE Symposium Series on Computational Intelligence (SSCI) pp 2361–2368.
Rao KM and Anuradha K (2016) A hybrid method for parameter estimation of software reliability growth model using Modified Genetic Swarm Optimization with the aid of logistic exponential testing effort function, in 2016 International Conference on Research Advances in Integrated Navigation Systems (RAINS) pp 1–8, IEEE.
Rodrigues A and Dias-Neto A (2016) Relevance and impact of critical factors of success in software test automation lifecycle: A survey, in Proceedings of the 1st Brazilian Symposium on Systematic and Automated Software Testing p 6, ACM.
Sahin O, Akay B (2016) Comparisons of metaheuristic algorithms and fitness functions on software test data generation. Appl Soft Comput 49:1202–1214
Sarvizadeh R, Kashani MH, Zakeri FS, Jameii SM (2012) A novel bee colony approach to distributed systems scheduling. Int J Comput Appl 42:1–6
Sayyari F and Emadi S (2015) Automated generation of software testing path based on ant colony, in 2015 International Congress on Technology, Communication and Knowledge (ICTCK) pp 435–440, IEEE.
Serdyukov KS and Avdeenko TV (2018) Automatic Data Generation for Software Testing Based on the Genetic Algorithm, in 2018 XIV International Scientific-Technical Conference on Actual Problems of Electronics Instrument Engineering (APEIE) pp 535–540, IEEE.
Sharma R, Saha A (2020) Identification of critical test paths using firefly algorithm for object oriented software. Journal of Interdisciplinary Mathematics 23:191–203
Sharma S, Rizvi SAM and Sharma V (2019) A Framework for Optimization of Software Test Cases Generation using Cuckoo Search Algorithm, in 2019 9th International Conference on Cloud Computing, Data Science & Engineering (Confluence) pp 282–286.
Sheikh Sofla M, Haghi Kashani M, Mahdipour E, Faghih Mirzaee R (2022) Towards effective offloading mechanisms in fog computing. Multimedia Tools and Applications 81:1997–2042
Shomali N and Arasteh B (2020) Mutation reduction in software mutation testing using firefly optimization algorithm. Data Technologies and Applications.
Singh SK and Singh A (2012) Software testing, Vandana Publications.
Singhal A, Bansal A, Kumar A (2016) An approach to design test oracle for aspect oriented software systems using soft computing approach. International Journal of System Assurance Engineering and Management 7:1–5
Singhal A, Bansal A, Kumar A (2021) Meta-heuristic algorithm to generate optimised test cases for aspect-oriented software systems. International Journal of Advanced Intelligence Paradigms 18:134–153
Sivaji U and Srinivasa Rao P (2021) Test case minimization for regression testing by analyzing software performance using the novel method. Materials Today: Proceedings.
Songhorabadi M, Rahimi M, MoghadamFarid A, Haghi Kashani M (2023) Fog computing approaches in IoT-enabled smart cities. J Netw Comput Appl 211:103557
Stocks PA (1993) Applying formal methods to software testing, University of Queensland.
Sugave SR, Patil SH, Reddy BE (2017) DDF: Diversity dragonfly algorithm for cost-aware test suite minimization approach for software testing, in 2017 International Conference on Intelligent Computing and Control Systems (ICICCS) pp 701–707, IEEE.
Suri B and Singhal S (2012) Literature survey of ant colony optimization in software testing. In: 2012 CSI Sixth International Conference on Software Engineering (CONSEG). IEEE, pp 1–7
Tebes G, Peppino D, Becker P, Matturro G, Solari M, Olsina L (2020) Analyzing and documenting the systematic review results of software testing ontologies. Inf Softw Technol 123:106298
Thirumoorthy K, Britto JJJ (2022) A clustering approach for software defect prediction using hybrid social mimic optimization algorithm. Computing 104:2605–2633
Thirumoorthy K, J JJB, (2022) A feature selection model for software defect prediction using binary Rao optimization algorithm. Appl Soft Comput 131:109737
Thompson HH (2003) Why security testing is hard. IEEE Secur Priv 1:83–86
Turing AM (1937) On Computable numbers, with an application to the Entscheidungsproblem. In: Proceedings of the London Mathematical Society s2–42:230–265
van der Veer H, Wiles A (2008) Achieving technical interoperability. European Telecommunications Standards Institute
West DB (1996) Introduction to graph theory. Prentice Hall, Upper Saddle River
Wiklund K, Eldh S, Sundmark D, Lundqvist K (2017) Impediments for software test automation: a systematic literature review. Software Test Verificat Reliab 27:e1639
Wu B, Yun L, Jin X, Liu B, Wei G (2016) Study on the fuzzing test method for industrial supervisory control configuration software based on genetic algorithm. In: 2016 11th international conference on reliability, maintainability and safety (ICRMS) pp 1–6, IEEE
Yang S, Man T, Xu J, Zeng F, Li K (2016) RGA: A lightweight and effective regeneration genetic algorithm for coverage-oriented software test data generation. Inf Softw Technol 76:19–30
Yang X-S (2009) Firefly algorithms for multimodal optimization. In: Watanabe O, Zeugmann T (eds) Stochastic algorithms: foundations and applications. Springer, Berlin, Heidelberg, pp 169–178
Yang X-S (2010a) Nature-inspired metaheuristic algorithms. Luniver Press
Yang X-S (2010b) A new metaheuristic bat-inspired algorithm. In: Nature inspired cooperative strategies for optimization (NICSO 2010b). Springer, pp 65–74
Yang X-S, Deb S (2009) Cuckoo search via Lévy flights. In: 2009 World congress on nature & biologically inspired computing (NaBIC). IEEE, pp 210–214
Yao X, Gong D, Li B, Dang X, Zhang G (2020) Testing method for software with randomness using genetic algorithm. IEEE Access 8:61999–62010
Yusop OM, Ibrahim S (2011) Evaluating software maintenance testing approaches to support test case evolution. Int J New Comput Architect Appl (IJNCAA) 1:74–83
Zelenka J, Budinská I, Dideková Z (2012) A combination of heuristic and non-heuristic approaches for modified vehicle routing problem. In: 2012 4th IEEE international symposium on logistics and industrial informatics. IEEE, pp 107–112
Zhan L (2022) Optimal model of software testing path selection based on genetic algorithm and its evolutionary solution. Wirel Commun Mob Comput 2022:7601096
Zhu E, Yao C, Ma Z, Liu F (2017) Study of an improved genetic algorithm for multiple paths automatic software test case generation. In: International conference on swarm intelligence. Springer, pp 402–408
Zhu K, Ying S, Zhang N, Zhu D (2021) Software defect prediction based on enhanced metaheuristic feature selection optimization and a hybrid deep neural network. J Syst Softw 180:111026
Ziming Z, Xiong X, Li J (2017) Improved evolutionary generation of test data for multiple paths in search-based software testing. In: 2017 IEEE Congress on Evolutionary Computation (CEC), pp 612–620
Zuse H (2019) Software complexity: measures and methods. Walter de Gruyter GmbH & Co KG
Funding
No funding is provided for the preparation of the manuscript.
Author information
Authors and Affiliations
Contributions
The first and second authors have equal contributions to this work.
Corresponding author
Ethics declarations
Competing interests
The authors have no relevant financial or non-financial interests to disclose.
Ethics approval
This article does not contain any studies with human participants.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Khoshniat, N., Jamarani, A., Ahmadzadeh, A. et al. Nature-inspired metaheuristic methods in software testing. Soft Comput 28, 1503–1544 (2024). https://doi.org/10.1007/s00500-023-08382-8
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-023-08382-8