banner

Optimizing test case prioritization using machine learning algorithms

Sheetal Sharma, Swati V Chande

Abstract


Software testing is an important aspect of software development to ensure the quality and reliability of the software. With the increasing complexity of software systems, the number of test cases has also increased significantly, making it challenging to execute all the test cases in a limited amount of time. Test case prioritization techniques have been proposedto tackle this problem by identifying and executing the most important test cases first. In this research paper, we propose the use of machine learning algorithms for prioritization of test cases. We explore different machine learning algorithms, including  decision  trees,  random  forests,  and  neural  networks,  and  compare  their  performance  with  traditional prioritization techniques such as code coverage-based and risk-based prioritization. We evaluate the effectiveness of these algorithms on various datasets and metrics such as the number of test cases executed, the fault detection rate, and the execution time. Our experimental results demonstrate that machine learning algorithms can effectively prioritize test cases and outperform traditional techniques in terms of reducing the number oftest cases executed while maintaining high fault detection rates. Furthermore, we discuss the potential limitations and future research directions of using machine learning algorithms for test case prioritization. Our research findings contribute to the development of more efficient and effective software testing techniques that can improve the quality and reliability of software systems

Keywords


machine learning; bugs; open source; decision tree; random forest

Full Text:

PDF

References


1. Abid R, Nadeem A. A novel approach to multiple criteria based test case prioritization. In: Proceedings of the 2017 13th International Conference on Emerging Technologies (ICET); 27–28 December 2017; Islamabad, Pakistan. pp. 1–6.

2. Khatibsyarbini M, Isa MA, Jawawi DN, Tumeng R. Test case prioritization approaches in regression testing: A systematic literature review. Information and Software Technology 2017; 93: 74–93. doi: 10.1016/j.infsof.2017.08.014

3. Ammar A, Baharom S, Ghani AAA, Din J. Enhanced weighted method for test case prioritization in regression testing using unique priority value. In: Proceedings of the 2016 International Conference on Information Science and Security (ICISS); 19–22 December 2016; Pattaya, Thailand. pp. 1–6.

4. Konsaard P, Ramingwong L. Using artificial bee colony for code coverage based test suite prioritization. In: Proceedings of the 2015 2nd International Conference on Information Science and Security (ICISS); 14–16 December 2015; Seoul, Korea. pp. 1–4.

5. Rosero RH, Gómez OS, Rodríguez G. Regression testing of database applications under an incremental software development setting. IEEE Access 2017; 5: 18419–18428. doi: 10.1109/ACCESS.2017.2749502

6. Hemmati H, Fang Z, Mantyla MV. Prioritizing manual test cases in traditional and rapid release environments. In: Proceedings of the 2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST); 13–17 April 2015; Graz, Austria. pp. 1–10.

7. Knauss E, Staron M, Meding W, et al. Supporting continuous integration by code-churn based test selection. In: Proceedings of the Second International Workshop on Rapid Continuous Software Engineering; 23 May 2015; Florence, Italy. pp. 19–25.

8. Nagar R, Kumar A, Singh GP, Kumar S. Test case selection and prioritization using cuckoos search algorithm. In: Proceedings of the 2015 International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE); 25–27 February 2015; Noida, India. pp. 283–288.

9. Khan SUR, Lee SP, Parizi RM, Elahi M. A code coverage-based test suite reduction and prioritization framework. In: Proceedings of the 2014 Fourth World Congress on Information and Communication Technologies (WICT); 8–11 December 2014; Malacca, Malaysia. pp. 229–234.

10. Saifan AA. Test case reduction using data mining classifier techniques. Journal of Software 2016; 11: 656–663. doi: 10.17706/jsw.11.7.656-663.

11. Huang R, Zong W, Chen J, et al. Prioritizing interaction test suites using repeated base choice coverage. In: Proceedings of the 2016 IEEE 40th Annual Computer Software and Applications Conference (COMPSAC); 10–14 June 2016; Atlanta, GA, USA. pp. 174–184.

12. Morozov A, Ding K, Chen T, Janschek K. Test suite prioritization for efficient regression testing of model-based automotive software. In: Proceedings of the 2017 International Conference on Software Analysis, Testing and Evolution (SATE); 3–4 November 2017; Harbin, China. pp. 20–29.

13. Muzammal M. Test-suite prioritisation by application navigation tree mining. In: Proceedings of the 2016 International Conference on Frontiers of Information Technology (FIT); 19–21 December 2016; Islamabad Pakistan. pp. 205–210.

14. Saha RK, Zhang L, Khurshid S, Perry DE. An information retrieval approach for regression test prioritization based on program changes. In: Proceedings of the 37th International Conference on Software Engineering; 16–24 May 2015; Florence, Italy. pp. 268–279.

15. Spieker H, Gotlieb, A, Marijan D, Mossige M. Reinforcement learning for automatic test case prioritization and selection in continuous integration. In: Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis; 10–14 June 2017; Santa Barbara, CA, USA. pp. 12–22.

16. Iqbal N, Kim DH. IoT task management mechanism based on predictive optimization for efficient energy consumption in smart residential buildings. Energy and Buildings 2022; 257: 111762. doi: 10.1016/j.enbuild.2021.111762

17. Imran M, Zaman U, Imtiaz J, et al. Comprehensive survey of iot, machine learning, and blockchain for health care applications: A topical assessment for pandemic preparedness, challenges, and solutions. Electronics 2021; 10(20): 2501. doi: 10.3390/electronics10202501

18. Kim DH. Artificial intelligence-based modeling mechanisms for material analysis and discovery. Journal of Intelligent Pervasive and Soft Computing 2022; 1(1): 10–15.

19. Qayyum F, Kim DH, Bong SJ, et al. A survey of datasets, preprocessing, modeling mechanisms, and simulation tools based on AI for material analysis and discovery. Materials 2022; 15(4): 1428. doi: 10.3390/ma15041428

20. Jamil F, Kim D. An ensemble of prediction and learning mechanism for improving accuracy of anomaly detection in network intrusion environments. Sustainability 2021; 13(18): 10057. doi: 10.3390/su131810057

21. Zaman U, Mehmood F, Iqbal N, et al. Towards secure and intelligent internet of health things: A survey of enabling technologies and applications. Electronics 2022; 11(12): 1893. doi: 10.3390/electronics11121893




DOI: https://doi.org/10.32629/jai.v6i2.661

Refbacks

  • There are currently no refbacks.


Copyright (c) 2023 Sheetal Sharma, Swati V Chande

License URL: https://creativecommons.org/licenses/by-nc/4.0