In Continuous Integration (CI) environments, the productivity of software engineers depends strongly on the ability to reduce the round-Trip time between code commits and feedback on failed test cases. Test case prioritization is popularly used as an optimization mechanism for ranking tests by their likelihood in revealing failures. However, existing techniques are usually time and resource intensive making them not suitable to be applied within CI cycles. This paper formulates the test case prioritization problem as an online learn-To-rank model using reinforcement learning techniques. Our approach minimizes the testing overhead and continuously adapts to the changing environment as new code and new test cases are added in each CI cycle. We validated our approach on an industrial case study showing that over 95% of the test failures are still reported back to the software engineers while only 40% of the total available test cases are being executed.
CITATION STYLE
Omri, S., & Sinz, C. (2022). Learning to Rank for Test Case Prioritization. In Proceedings - 15th Search-Based Software Testing Workshop, SBST 2022 (pp. 16–24). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1145/3526072.3527525
Mendeley helps you to discover research relevant for your work.