journal article·2023Open access

An Optimized Test Case Minimization Technique Using Genetic Algorithm for Regression Testing

Rubab Sheikh, Muhammad Imran Babar, Rawish Butt, Abdelzahir Abdelmaboud, Taiseer Abdalla Elfadil Eisa

Computers, Materials & Continua· Volume 74· Issue 3

Abstract

Regression testing is a widely used approach to confirm the correct functionality of the software in incremental development. The use of test cases makes it easier to test the ripple effect of changed requirements. Rigorous testing may help in meeting the quality criteria that is based on the conformance to the requirements as given by the intended stakeholders. However, a minimized and prioritized set of test cases may reduce the efforts and time required for testing while focusing on the timely delivery of the software application. In this research, a technique named TestReduce has been presented to get a minimal set of test cases based on high priority to ensure that the web application meets the required quality criteria. A new technique TestReduce is proposed with a blend of genetic algorithm to find an optimized and minimal set of test cases. The ultimate objective associated with this study is to provide a technique that may solve the minimization problem of regression test cases in the case of linked requirements. In this research, the 100-Dollar prioritization approach is used to define the priority of the new requirements.
Source: openalex_inverted_index · Quality: baseline

Research context

OpenAlex topics: Software Testing and Debugging Techniques · Software Reliability and Analysis Research · Software Engineering Research

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

References (42)

Show source-provided references
1. Software testing tools: A new classification scheme10.1002/stvr.4370010304 ↗
2. 15 years of software regression testing techniques-A survey10.1142/S0218194016300013 ↗
3. Regression testing minimization, selection and prioritization: A survey10.1002/stv.430 ↗
4. Search-based software test data generation: A survey10.1002/stvr.294 ↗
5. Automatic software test data generation for spanning sets coverage using genetic algorithms
6. Prioritizing test cases for regression testing10.1109/32.962562 ↗
7. Automatic state-based test generation using genetic algorithms
8. Breeding software test cases with genetic algorithms
9. Regression test suite reduction using an hybrid technique based on BCO and genetic algorithm10.47893/IJCSI.2013.1113 ↗
10. Stress testing real-time systems with genetic algorithms
11. L. C. Briand, J. Feng and Y. Labiche, “Using genetic algorithms and coupling measures to devise optimal integration test orders,” SEKE '02: Proc. of the 14th Int. Conf. on Software Engineering and Knowledge Engineering, pp. 43, 2002. https://doi.org/10.1145/568766.568769.10.1145/568760.568769 ↗
12. Evolutionary testing of classes
13. Investigating the performance of genetic algorithm-based software test case generation
14. CHECK IF IT IS USED--testing Web applications by modeling with FSMs10.1007/s10270-004-0077-7 ↗
15. Software testing in critical embedded systems: A systematic review of adherence to the DO-178B standard
16. A critical review of various testing techniques in aspect-oriented software systems10.1145/2492248.2492275 ↗
17. Towards a method for combined model-based testing and analysis
18. Software testing: A research travelogue (2000–2014)
19. Test case prioritization: A family of empirical studies10.1109/32.988497 ↗
20. Modeling the cost-benefits tradeoffs for regression testing techniques
21. Comparison of requirement prioritization techniques to find best prioritization technique10.5815/ijmecs.2015.11.06 ↗
22. Nature-inspired approaches to test suite minimization for regression testing
23. Optimized regression test using test case prioritization
24. Test case minimization approach using fault detection and combinatorial optimization techniques for configuration-aware structural testing10.1016/j.jestch.2015.11.006 ↗
25. An effective formulation of the multi-criteria test suite minimization problem10.1016/j.jss.2020.110632 ↗
26. Test case minimization for regression testing by analyzing software performance using the novel method
27. Nemo: Multi-criteria test-suite minimization with integer nonlinear programming
28. Scope-aided test prioritization, selection and minimization for software reuse10.1016/j.jss.2016.06.058 ↗
29. Analysis of test case prioritization in regression testing using genetic algorithm
30. A genetic algorithm for fault based regression test case prioritization
31. Factors oriented test case prioritization technique in regression testing using genetic algorithm
32. Test-data generation using genetic algorithms10.1002/(SICI)1099-1689(199912)9:4<263::AID-STVR190>3.0.CO;2-Y ↗
33. A tabu search algorithm for structural software testing10.1016/j.cor.2007.01.009 ↗
34. Minimizing test suites in software product lines using weight-based genetic algorithms
35. Search algorithms for regression test case prioritization10.1109/TSE.2007.38 ↗
36. Optimization of functional testing using genetic algorithms
37. A genetic algorithm for the time-aware regression testing reduction problem
38. DDF: Diversity dragonfly algorithm for cost-aware test suite minimization approach for software testing
39. Test case optimization and prioritization based on multi-objective genetic algorithm10.1007/978-981-13-0761-4_36 ↗
40. GASSER: Genetic algorithm for teSt suite reduction10.1145/3382494.3422157 ↗
41. Code coverage similarity measurement using machine learning for test cases minimization
42. A. Stocco, A. Mesbah and A. Vahabzadeh, “Fine-grained test minimization,” pp. 11, 2018. https://doi.org/10.1145/3180155.3180203.10.1145/3180155.3180203 ↗