Automatically Learning a Precise Measurement for Fault Diagnosis Capability of Test Cases
Yifan Zhao, Zeyu Sun, Guoqing Wang, Qingyuan Liang, Yakun Zhang,, Yiling Lou, Dan Hao, Lu Zhang

TL;DR
This paper introduces RLFDC, a reinforcement learning-based, result-agnostic metric for measuring fault diagnosis capability of tests, improving fault localization by more accurately predicting test effectiveness.
Contribution
It proposes a novel reinforcement learning approach to automatically learn a more accurate FDC metric without relying on predefined heuristics.
Findings
RLFDC outperforms existing result-agnostic metrics in test selection.
RLFDC improves fault localization accuracy in experiments.
The approach is effective for guiding test generation and selection.
Abstract
Prevalent Fault Localization (FL) techniques rely on tests to localize buggy program elements. Tests could be treated as fuel to further boost FL by providing more debugging information. Therefore, it is highly valuable to measure the Fault Diagnosis Capability (FDC) of a test for diagnosing faults, so as to select or generate tests to better help FL. To this end, researchers have proposed many FDC metrics, which serve as the selection criterion in FL-oriented test selection or the fitness function in FL-oriented test generation. Existing FDC metrics can be classified into result-agnostic and result-aware metrics depending on whether they take test results (i.e., passing or failing) as input. Although result-aware metrics perform better in test selection, they have restricted applications due to the input of test results, e.g., they cannot be applied to guide test generation. Moreover,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Fault Detection and Control Systems · Software Testing and Debugging Techniques
