Proceedings of the 33rd Annual International Computer Software and Applications Conference (COMPSAC '09),
vol. 1, IEEE Computer Society Press, Los Alamitos, CA, pp. 99-106 (2009). [Best paper award.]

How Well Do Test Case Prioritization Techniques
Support Statistical Fault Localization

Bo Jiang 2 , Zhenyu Zhang 2 , T.H. Tse 3 , and T.Y. Chen 4

[paper from IEEE Xplore | paper from IEEE digital library | technical report TR-2009-09]


In continuous integration, a tight integration of test case prioritization techniques and fault-localization techniques may both expose failures faster and locate faults more effectively. Statistical fault-localization techniques use the execution information collected during testing to locate faults. Executing a small fraction of a prioritized test suite reduces the cost of testing, and yet the subsequent fault localization may suffer. This paper presents the first empirical study to examine the impact of test case prioritization on the effectiveness of fault localization. Among many interesting empirical results, we find that coverage-based techniques and random ordering can be more effective than distribution-based techniques in supporting statistical fault localization. Furthermore, the integration of random ordering for test case prioritization and statistical fault localization can be effective in locating faults quickly and economically.

Keywords: Continuous integration; software process integration; test case prioritization; fault localization

1. This research is supported in part by the General Research Fund of the Research Grants Council of Hong Kong (project nos. 716507 and 717308) and a Discovery Grant of the Australian Research Council.
2. Department of Computer Science, The University of Hong Kong, Pokfulam, Hong Kong.
3. (Corresponding author.)
Department of Computer Science, The University of Hong Kong, Pokfulam, Hong Kong.
4. Centre for Software Analysis and Testing, Swinburne University of Technology, Melbourne, Australia.


  Cumulative visitor count