(Publisher of Peer Reviewed Open Access Journals)

International Journal of Advanced Technology and Engineering Exploration (IJATEE)

ISSN (Print):2394-5443    ISSN (Online):2394-7454
Volume-9 Issue-88 March-2022
Full-Text PDF
Paper Title : Test case prioritization using modified genetic algorithm and ant colony optimization for regression testing
Author Name : T. K. Akila and A. Malathi
Abstract :

Regression testing (RT) plays an essential role in software maintenance. The occurrence of any new fault during the re-testing or modification process needs to be analyzed effectually. RT needs enormous effort to produce a higher fault detection rate. Test case prioritization (TCP) is an efficient way to predict the fault detection rate. Various researchers modelled the TCP method to provide a single objective solution; however, this work concentrates on providing a multi-objective solution using a meta-heuristic optimization approach. Here, two different approaches known as ant colony optimization (ACO) and genetic algorithm (GA) are adopted to offer a multi-objective solution with a better fault detection rate. The characteristics of the ACO and GA are analyzed to prioritize the test case by combining the multi-dimensional characteristics under the test environment to enhance the fault detection rate. Here, some experimentation is made to compute the performance of the proposed model by evaluating the number of test cases, number of iterations, and ant traversal path. The proposed model shows better trade-off in contrast to the prevailing approaches where the fault detection rate of multi-objective (ACO and GA) model provides outcomes of 94.5%, 94.8%, 93.8%, 92.5%, 95.8%, 97.8%, 99.2%, and 93.5% respectively.

Keywords : Regression test, Test case prioritization, Genetic algorithm, Ant colony optimization, Meta-heuristic optimization.
Cite this article : Akila TK, Malathi A. Test case prioritization using modified genetic algorithm and ant colony optimization for regression testing . International Journal of Advanced Technology and Engineering Exploration. 2022; 9(88):384-400. DOI:10.19101/IJATEE.2021.874727.
References :
[1]Yoo S, Harman M. Regression testing minimization, selection and prioritization: a survey. Software Testing, Verification and Reliability. 2012; 22(2):67-120.
[Crossref] [Google Scholar]
[2]Yuan F, Bian Y, Li Z, Zhao R. Epistatic genetic algorithm for test case prioritization. In international symposium on search based software engineering 2015 (pp. 109-24). Springer, Cham.
[Crossref] [Google Scholar]
[3]Bajaj A, Sangwan OP. A survey on regression testing using nature-inspired approaches. In 4th international conference on computing communication and automation 2018 (pp. 1-5). IEEE.
[Crossref] [Google Scholar]
[4]Wang S, Buchmann D, Ali S, Gotlieb A, Pradhan D, Liaaen M. Multi-objective test prioritization in software product line testing: an industrial case study. In proceedings of the international software product line conference 2014 (pp. 32-41).
[Crossref] [Google Scholar]
[5]Ansari A, Khan A, Khan A, Mukadam K. Optimized regression test using test case prioritization. Procedia Computer Science. 2016; 79:152-60.
[Crossref] [Google Scholar]
[6]Huang YC, Peng KL, Huang CY. A history-based cost-cognizant test case prioritization technique in regression testing. Journal of Systems and Software. 2012; 85(3):626-37.
[Crossref] [Google Scholar]
[7]Briand L, Labiche Y, Chen K. A multi-objective genetic algorithm to rank state-based test cases. In international symposium on search based software engineering 2013 (pp. 66-80). Springer, Berlin, Heidelberg.
[Crossref] [Google Scholar]
[8]Pradhan D, Wang S, Ali S, Yue T, Liaaen M. CBGA-ES: a cluster-based genetic algorithm with elitist selection for supporting multi-objective test optimization. In international conference on software testing, verification and validation 2017 (pp. 367-78). IEEE.
[Crossref] [Google Scholar]
[9]Srikanth H, Hettiarachchi C, Do H. Requirements based test prioritization using risk factors: an industrial study. Information and Software Technology. 2016; 69:71-83.
[Crossref] [Google Scholar]
[10]Khanna M, Chauhan N, Sharma D, Toofani A, Chaudhary A. Search for prioritized test cases in multi-objective environment during web application testing. Arabian Journal for Science and Engineering. 2018; 43(8):4179-201.
[Crossref] [Google Scholar]
[11]Suri B, Singhal S. Implementing ant colony optimization for test case selection and prioritization. International Journal on Computer Science and Engineering. 2011; 3(5):1924-32.
[Google Scholar]
[12]Geng J, Li Z, Zhao R, Guo J. Search based test suite minimization for fault detection and localization: a co-driven method. In international symposium on search based software engineering 2016 (pp. 34-48). Springer, Cham.
[Crossref] [Google Scholar]
[13]Li Z, Harman M, Hierons RM. Search algorithms for regression test case prioritization. IEEE Transactions on Software Engineering. 2007; 33(4):225-37.
[Crossref] [Google Scholar]
[14]Yoo S, Harman M, Ur S. Highly scalable multi objective test suite minimisation using graphics cards. In international symposium on search based software engineering 2011 (pp. 219-36). Springer, Berlin, Heidelberg.
[Crossref] [Google Scholar]
[15]Mei H, Hao D, Zhang L, Zhang L, Zhou J, Rothermel G. A static approach to prioritizing junit test cases. IEEE Transactions on Software Engineering. 2012; 38(6):1258-75.
[Crossref] [Google Scholar]
[16]Yoo S, Harman M, Tonella P, Susi A. Clustering test cases to achieve effective and scalable prioritisation incorporating expert knowledge. In proceedings of the eighteenth international symposium on software testing and analysis 2009 (pp. 201-12).
[Crossref] [Google Scholar]
[17]Marchetto A, Islam MM, Asghar W, Susi A, Scanniello G. A multi-objective technique to prioritize test cases. IEEE Transactions on Software Engineering. 2015; 42(10):918-40.
[Crossref] [Google Scholar]
[18]Di ND, Panichella A, Zaidman A, De LA. A test case prioritization genetic algorithm guided by the hypervolume indicator. IEEE Transactions on Software Engineering. 2018; 46(6):674-96.
[Crossref] [Google Scholar]
[19]Guo P, Wang X, Han Y. The enhanced genetic algorithms for the optimization design. In international conference on biomedical engineering and informatics 2010 (pp. 2990-4). IEEE.
[Crossref] [Google Scholar]
[20]Laali M, Liu H, Hamilton M, Spichkova M, Schmidt HW. Test case prioritization using online fault detection information. In Ada-Europe international conference on reliable software technologies 2016 (pp. 78-93). Springer, Cham.
[Crossref] [Google Scholar]
[21]Khatibsyarbini M, Isa MA, Jawawi DN, Hamed HN, Suffian MD. Test case prioritization using firefly algorithm for software testing. IEEE Access. 2019; 7:132360-73.
[Crossref] [Google Scholar]
[22]Jahan H, Feng Z, Mahmud SM. Risk-based test case prioritization by correlating system methods and their associated risks. Arabian Journal for Science and Engineering. 2020; 45(8):6125-38.
[Crossref] [Google Scholar]
[23]Solanki K, Singh Y, Dalal S, Srivastava PR. Test case prioritization: an approach based on modified ant colony optimization. In emerging research in computing, information, communication and applications 2016 (pp. 213-23). Springer, Singapore.
[Crossref] [Google Scholar]
[24]Kundu D, Sarma M, Samanta D, Mall R. System testing for object‐oriented systems with test case prioritization. Software Testing, Verification and Reliability. 2009; 19(4):297-333.
[Crossref] [Google Scholar]
[25]Kaur P, Bansal P, Sibal R. Prioritization of test scenarios derived from UML activity diagram using path complexity. In proceedings of the CUBE international information technology conference 2012 (pp. 355-9).
[Crossref] [Google Scholar]
[26]Sharma S, Singh A. Model-based test case prioritization using ACO: a review. In international conference on parallel, distributed and grid computing 2016 (pp. 177-81). IEEE.
[Crossref] [Google Scholar]
[27]Niu H, Keivanloo I, Zou Y. Learning to rank code examples for code search engines. Empirical Software Engineering. 2017; 22(1):259-91.
[Crossref] [Google Scholar]
[28]Ye X, Bunescu R, Liu C. Learning to rank relevant files for bug reports using domain knowledge. In proceedings of the ACM SIGSOFT international symposium on foundations of software engineering 2014 (pp. 689-99).
[Crossref] [Google Scholar]
[29]Yu YT, Lau MF. Fault-based test suite prioritization for specification-based testing. Information and Software Technology. 2012; 54(2):179-202.
[Crossref] [Google Scholar]
[30]Paiva AC, Faria JC, Tillmann N, Vidal RA. A model-to-implementation mapping tool for automated model-based GUI testing. In international conference on formal engineering methods 2005 (pp. 450-64). Springer, Berlin, Heidelberg.
[Crossref] [Google Scholar]
[31]Singh G, Gupta D. An integrated approach to test suite selection using ACO and genetic algorithm. International Journal of Advanced Research in Computer Science and Software Engineering. 2013; 3(6):1770-8.
[Google Scholar]
[32]Tahat L, Korel B, Koutsogiannakis G, Almasri N. State-based models in regression test suite prioritization. Software Quality Journal. 2017; 25(3):703-42.
[Crossref] [Google Scholar]
[33]Nayak S, Kumar C, Tripathi S. Enhancing efficiency of the test case prioritization technique by improving the rate of fault detection. Arabian Journal for Science and Engineering. 2017; 42(8):3307-23.
[Google Scholar]
[34]Wang Y, Zhu Z, Yang B, Guo F, Yu H. Using reliability risk analysis to prioritize test cases. Journal of Systems and Software. 2018; 139:14-31.
[Crossref] [Google Scholar]
[35]Jahan H, Feng Z, Mahmud SM, Dong P. Version specific test case prioritization approach based on artificial neural network. Journal of Intelligent & Fuzzy Systems. 2019; 36(6):6181-94.
[Crossref] [Google Scholar]
[36]Khatibsyarbini M, Isa MA, Jawawi DN, Tumeng R. Test case prioritization approaches in regression testing: a systematic literature review. Information and Software Technology. 2018; 93:74-93.
[Crossref] [Google Scholar]
[37]Fu W, Yu H, Fan G, Ji X, Pei X. A regression test case prioritization algorithm based on program changes and method invocation relationship. In Asia-pacific software engineering conference 2017 (pp. 169-78). IEEE.
[Crossref] [Google Scholar]
[38]Dash U, Acharya AA. A systematic review of test case prioritization approaches. In proceedings of international conference on advanced computing applications 2022 (pp. 653-66). Springer, Singapore.
[Crossref] [Google Scholar]
[39]Gupta P. Test case prioritization based on requirement. In communication and intelligent systems 2021 (pp. 309-14). Springer, Singapore.
[Crossref] [Google Scholar]
[40]Hettiarachchi C, Do H, Choi B. Effective regression testing using requirements and risks. In eighth international conference on software security and reliability 2014 (pp. 157-66). IEEE.
[Crossref] [Google Scholar]