Title :
Test Case Prioritization for Continuous Regression Testing: An Industrial Case Study
Author :
Marijan, Dusica ; Gotlieb, Arnaud ; Sen, Satyaki
Abstract :
Regression testing in continuous integration environment is bounded by tight time constraints. To satisfy time constraints and achieve testing goals, test cases must be efficiently ordered in execution. Prioritization techniques are commonly used to order test cases to reflect their importance according to one or more criteria. Reduced time to test or high fault detection rate are such important criteria. In this paper, we present a case study of a test prioritization approach ROCKET (Prioritization for Continuous Regression Testing) to improve the efficiency of continuous regression testing of industrial video conferencing software. ROCKET orders test cases based on historical failure data, test execution time and domain-specific heuristics. It uses a weighted function to compute test priority. The weights are higher if tests uncover regression faults in recent iterations of software testing and reduce time to detection of faults. The results of the study show that the test cases prioritized using ROCKET (1) provide faster fault detection, and (2) increase regression fault detection rate, revealing 30% more faults for 20% of the test suite executed, comparing to manually prioritized test cases.
Keywords :
fault diagnosis; program testing; regression analysis; software reliability; statistical testing; teleconferencing; ROCKET; continuous integration environment; domain-specific heuristics; fault detection rate; high fault detection rate; historical failure data; industrial case study; industrial video conferencing software; prioritization for continuous regression testing; regression faults; software testing; test case prioritization technique; test execution time; test priority; time constraints; weighted function; Fault detection; Linear programming; Manuals; Rockets; Software; Testing; Time factors; continuous integration; history-based prioritization; regression testing; software testing; test case prioritization;
Conference_Titel :
Software Maintenance (ICSM), 2013 29th IEEE International Conference on
Conference_Location :
Eindhoven
DOI :
10.1109/ICSM.2013.91