Bypassing Code Coverage Approximation Limitations via Effective Input-Based Randomized Test Case Prioritization

Bo Jiang, W.K. Chan
2013 2013 IEEE 37th Annual Computer Software and Applications Conference  
Test case prioritization assigns the execution priorities of the test cases in a given test suite with the aim of achieving certain goals. Many existing test case prioritization techniques however assume the full-fledged availability of code coverage data, fault history, or test specification, which are seldom well-maintained in many software development projects. This paper proposes a novel family of LBS techniques. They make adaptive tree-based randomized explorations with an adaptive
more » ... ed candidate test set strategy to diversify the explorations among the branches of the exploration trees constructed by the test inputs in the test suite. They get rid of the assumption on the historical correlation of code coverage between program versions. Our techniques can be applied to programs with or without any previous versions, and hence are more general than many existing test case prioritization techniques. The empirical study on four popular UNIX utility benchmarks shows that, in terms of APFD, our LBS techniques can be as effective as some of the best code coverage-based greedy prioritization techniques ever proposed. We also show that they are significantly more efficient and scalable than the latter techniques.
doi:10.1109/compsac.2013.33 dblp:conf/compsac/JiangC13 fatcat:luhmjtbkyjgmnc5yotdq275c4a