Publication Date: 2023/05/19
Abstract: Continuous Integration (CI) platforms enable recurrent integration of software variations, creating software development rapidly and cost-effectively. In these platforms, integration, and regression testing play an essential role in Test Case Prioritization (TCP) to detect the test case order, which enhances specific objectives like early failure discovery. Currently, Artificial Intelligence (AI) models have emerged widely to solve complex software testing problems like integration and regression testing that create a huge quantity of data from iterative code commits and test executions. In CI testing scenarios, AI models comprising machine and deep learning predictors can be trained by using large test data to predict test cases and speed up the discovery of regression faults during code integration. But these models attain various efficiencies based on the context and factors of CI testing such as varying time cost or the size of test execution history utilized to prioritize failing test cases. Earlier research on TCP using AI models does not often learn these variables that are crucial for CI testing. In this article, a comprehensive review of the different TCP models using deep-learning algorithms including Reinforcement Learning (RL) is presented to pay attention to the software testing field. Also, the merits and demerits of those models for TCP in CI testing are examined to comprehend the challenges of TCP in CI testing. According to the observed challenges, possible solutions are given to enhance the accuracy and stability of deep learning models in CI testing for TCP.
Keywords: Software Testing, Continuous Integration Testing, Regression Testing, Test Case Prioritization, Artificial Intelligence, Deep Learning, Reinforcement Learning.
DOI: https://doi.org/10.5281/zenodo.8282823
PDF: https://ijirst.demo4.arinfotech.co/assets/upload/files/IJISRT23APR2084.pdf
REFERENCES