Validity-Preserving Delta Debugging via Generator
CoRR(2024)
摘要
Reducing test inputs that trigger bugs is crucial for efficient debugging.
Delta debugging is the most popular approach for this purpose. When test inputs
need to conform to certain specifications, existing delta debugging practice
encounters a validity problem: it blindly applies reduction rules, producing a
large number of invalid test inputs that do not satisfy the required
specifications. This overall diminishing effectiveness and efficiency becomes
even more pronounced when the specifications extend beyond syntactical
structures. Our key insight is that we should leverage input generators, which
are aware of these specifications, to generate valid reduced inputs, rather
than straightforwardly performing reduction on test inputs. In this paper, we
propose a generator-based delta debugging method, namely GReduce, which derives
validity-preserving reducers. Specifically, given a generator and its
execution, demonstrating how the bug-inducing test input is generated, GReduce
searches for other executions on the generator that yield reduced, valid test
inputs. To evaluate the effectiveness, efficiency, and versatility of GReduce,
we apply GReduce and the state-of-the-art reducer Perses in three domains:
graphs, deep learning models, and JavaScript programs. The results of GReduce
are 28.5
0.6
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要