Skip to main content
Log in

Analytic hierarchy process-based regression test case prioritization technique enhancing the fault detection rate

  • Foundations
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

Regression testing is a testing method conducted to ensure that improvements do not affect the software’s current behavior. Test cases play a significant role in software testing activities since it detects faults in the software. The selection of test cases for execution based on the priority is a considerable decision-making step since testing needs to be carried out with limited computing resources like cost, effort, and time. Prioritized selection of test cases involves considering specific test case parameters or criteria; prioritizing test cases can be conceived as a multi-criteria decision-making problem. In this paper, using the Analytic Hierarchy Process (AHP) method, we suggest an approach for prioritizing the selection of the test cases. AHP provides a rational framework for structuring a decision-making problem. It is used to determine the priority of a set of criteria and to calculate the consistency ratio of those criteria using pair-wise comparisons of various measures. Using a new priority regression test algorithm proposed in this study, regression test prioritization is transformed into a multi-criteria decision-making problem. The suggested strategy has a higher Average Percentage of Faults Detected (APFD) value when many determinants are taken into account. The experimental results indicate that our proposed prioritization approach would improve the probability that faults will be detected early and enhance performance compared to other prioritization strategies.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Data Availability

Enquiries about data availability should be directed to the authors.

References

  • Afzal N, Sadim M (2018) Software requirements selection using AHP. Int J Comput Sci Commun 9(2):47–52

    Google Scholar 

  • Ahmad Y, Pirzada DS (2014) Using analytic hierarchy process for exploring prioritization of functional strategies in auto parts manufacturing SMEs of Pakistan. Sage Open. https://doi.org/10.1177/2158244014553560

    Article  Google Scholar 

  • Arrieta A, Wang S, Sagardui G, Etxeberria L (2019) Search-based test case prioritization for simulation-based testing of cyber-physical system product lines. J Syst Softw 149:1–34

    Article  Google Scholar 

  • Avritzer A, Weyuker EJ (1997) Monitoring smoothly degrading systems for increased dependability. Empir Softw Eng 2:59–77

    Article  Google Scholar 

  • Bajaj A, Sangwan OP (2019) A systematic literature review of test case prioritization using genetic algorithms. IEEE Access 7:126355–126375

    Article  Google Scholar 

  • Bajaj A, Sangwan OP (2021) Discrete cuckoo search algorithms for test case prioritization. Appl Soft Comput. https://doi.org/10.1016/j.asoc.2021.107584

    Article  Google Scholar 

  • Chi J, Qu Y, Zheng Q, Yang Z, Jin W, Cui D, Liu T (2020) Relation-based test case prioritization for regression testing. J Syst Softw 163:1–18

    Article  Google Scholar 

  • Cho Y, Kim J, Lee E (2016) History-based test case prioritization for failure information. In: 23rd Asia-Pacific software engineering conference (APSEC), IEEE

  • Dash U, Acharya AA (2022) A systematic review of test case prioritization approaches. In: Proceedings of international conference on advanced computing applications, Springer, pp 653–666

  • Elbaum S, Malishevsky A, Rothermel G (2000) Prioritizing test cases for regression testing. In: Proceedings the 2000 ACM SIGSOFT international symposium on software testing and analysis, Portland, Oregon, USA, pp 102–112

  • Emam SS, Miller J (2015) Test case prioritization using extended digraphs. ACM Trans Softw Eng Methodol 25(01):1–41

    Article  Google Scholar 

  • Hettiarachchi C, Do H, Choi B (2016) Risk-based test case prioritization using a fuzzy expert system. Inf Softw Technol 69:1–15

    Article  Google Scholar 

  • Huang R, Towey D, Xu Y, Zhou Y, Yang N (2022) Dissimilarity-based test case prioritization through data fusion. Softw Pract Exp. https://doi.org/10.1002/spe.3068

    Article  Google Scholar 

  • Jahan H, Feng Z, Mahmud SMH (2020) Risk-based test case prioritization by correlating system methods and their associated risks. Arabian J Sci Eng 45:6125–6138

    Article  Google Scholar 

  • Jeffrey D, Gupta R (2005) Test suite reduction with selective redundancy. In: 21st IEEE conference on software maintenance (ICSM’05), pp 549–558

  • Kavitha R, Sureshkumar N (2010) Test case prioritization for regression testing based on severity of fault. Int J Comput Sci Engg (IJCSE) 2(5):1462–1466

    Google Scholar 

  • Khatibsyarbini M, Isa M, Jawani D, Hamed H, Suffian M (2019) Test case prioritization using firefly algorithm for software testing. IEEE Access 7:132360–132373

    Article  Google Scholar 

  • Klindee P, Prompoon N (2015) Test case prioritization for software regression testing using analytic hierarchy process. In: 12th International joint conference on computer science and software engineering (JCSSE), pp 168–173

  • Korel B, Koutsogiannakis G, Tahat LH (2007) Model-based test prioritization heuristic methods and their evaluation. In: Proceeding A-MOST’07 Proceedings of the 3rd international workshop on advances in model-based testing, ACM, pp 34–43

  • Li Z, HarmanHierons M (2007) Search algorithms for regression test case prioritization. IEEE Trans on Softw Eng 33(4):225–237

    Article  Google Scholar 

  • Luo Q, Moran K, Poshyvanyk D, Penta M (2018) Assessing test case prioritization on real faults and mutants. In: IEEE international conference on software maintenance and evolution (ICSME)

  • Maheswari R, Mala D (2013) A novel approach for test case prioritization. In: IEEE International conference on computational intelligence and computing research

  • Mohanty S, Mohapatra SK, Meko SF (2020) Ant colony optimization (ACO-min) algorithm for test suite minimization. Adv Intell Syst Comput (AISC) 1119:55–63

    Google Scholar 

  • Nayak S, Kumar C, Tripathi S (2017) Enhancing efficiency of the test case prioritization technique by improving the rate of fault detection. Arab J Sci Eng 42(8):3307–3323

    Article  Google Scholar 

  • Nayak S, Kumar C, Tripathi S (2016) Effectiveness of prioritization of test cases based on faults. In: Proceedings third int’l conference on recent advances in information technology (RAIT-2016) IEEE. https://doi.org/10.1109/RAIT.2016.7507977

  • Noor T, Hemmati H (2017) Studying test case failure prediction for test case prioritization. In: Proceedings of the 13th international conference on predictive models and data analytics in software engineering (PROMISE), pp 2–11

  • Panwar D, Tomar P, Singh V (2018) Hybridization of Cuckoo-ACO algorithm for test case prioritization. J Stat Manag Syst Taylor and Francis 21(04):539–546

    Google Scholar 

  • Qasim M, Bibi A, Hussain SJ, Jhanjhi NZ, Humayun M, Sama NU (2021) Test case prioritization techniques in software regression testing: an overview. Int J Adv Appl Sci 8(5):107–121

    Article  Google Scholar 

  • Rothermel G, Harrold MJ (1997) A safe, efficient regression test selection technique. ACM Trans Softw Eng Methodol 6(2):173–210

    Article  Google Scholar 

  • Rothermel G, Untch R, Chu C, Harrold M (2001) Prioritizing test cases for regression testing. IEEE Trans Softw Eng 27(10):929–948

    Article  Google Scholar 

  • Rotherrmel G, Harrold MJ, Ostrin J, Hong C (1998) An empirical study of the effects of minimization on the fault detection capabilities of test suites. In: Proceedings of the international conference on software maintenance, pp 34–43

  • Saaty RW (1987) The analytic hierarchy process-what it is and how it is used. Math Model 9(3–5):161–176

    Article  MathSciNet  Google Scholar 

  • Shin D, Yoo S, Papadakis M, Bae D (2018) Empirical evaluation of mutation-based test case prioritization techniques. Softw Test Verif Reliab. https://doi.org/10.1002/stvr.1695

    Article  Google Scholar 

  • Shrivathsan A, Ravichandran K, Krishankumar R, Sangeetha V, Kar S, Ziemba P, Jankowski J (2019) Novel fuzzy clustering methods for test case prioritization in software projects. Symmetry 11(11):1–22

    Article  Google Scholar 

  • Srivastava, P. (2008) Test case prioritization. Journal of Theoretical and Applied Information Technology (JATIT), 178–181

  • Tahvili S, Bohlin M (2016) Test case prioritization using multi criteria decision making methods. Danish Soc Oper Res 26:9–11

    Google Scholar 

  • Tyagi M, Malhotra S (2015) An approach for test case prioritization based on three factors. Int’l J Inf Technol Comput Sci 4:79–86

    Google Scholar 

  • Wei D, Sun Q, Wang X, Zhang T, Chen B (2020) A model based test case prioritization approach based on fault urgency and severity. Int J Softw Eng Knowl Eng World Sci 30(02):263–290

    Article  Google Scholar 

  • Yan R, Chen Y, Gao H, Yan J (2022) Test case prioritization with neuron valuation based pattern. Sci Comput Progr 215:1–15

    Article  Google Scholar 

  • Yoo S, Harman M (2012) Regression testing minimization, selection and prioritization: a survey. Softw Test Verif Reliab 22(2):67–120

    Article  Google Scholar 

Download references

Funding

No funds, grants, or other support was received.

Author information

Authors and Affiliations

Authors

Contributions

All authors contributed to the study conception and design. Material preparation, data collection and analysis were performed by Soumen Nayak, Chiranjeev Kumar and Sachin Tripathi. The first draft of the manuscript was written by Soumen Nayak and all authors commented on previous versions of the manuscript. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Soumen Nayak.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Ethical approval

This article does not contain any studies with human participants or animals performed by any of the authors.

Informed consent

This research does not involve any human participants or animals.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Supplementary Information

Below is the link to the electronic supplementary material.

Supplementary file1 (XLSX 19 kb)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nayak, S., Kumar, C. & Tripathi, S. Analytic hierarchy process-based regression test case prioritization technique enhancing the fault detection rate. Soft Comput 26, 6953–6968 (2022). https://doi.org/10.1007/s00500-022-07174-w

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-022-07174-w

Keywords

Navigation