Lune

ISSTA2025顶会

FANDANGO: Evolving Language-Based Testing

José Antonio Zamudio Amaya, Marius Smytzek, Andreas Zeller

2025年份
1被引次数
2顶会引用

摘要

Language-based fuzzers leverage formal input specifications ( languages ) to generate arbitrarily large and diverse sets of valid inputs for a program under test. Modern language-based test generators combine grammars and constraints to satisfy syntactic and semantic input constraints. isl a, the leading input generator in that space, uses symbolic constraint solving to solve input constraints. Using solvers places isl a among the most precise fuzzers but also makes it slow. In this paper, we explore search-based testing as an alternative to symbolic constraint solving. We employ a genetic algorithm that iteratively generates candidate inputs from an input specification, evaluates them against defined constraints, evolving a population of inputs through syntactically valid mutations and retaining those with superior fitness until the semantic input constraints are met. This evolutionary procedure, analogous to natural genetic evolution, leads to progressively improved inputs that cover both semantics and syntax. This change boosts the efficiency of language-based testing: In our experiments, compared to isl a, our search-based fandango prototype is faster by one to three orders of magnitude without sacrificing precision. The search-based approach no longer restricts constraints to constraint solvers’ (miniature) languages. In fandango , constraints can use the whole python language and library . This expressiveness gives testers unprecedented flexibility in shaping test inputs. It allows them to state arbitrary goals for test generation : “Please produce 1,000 valid test inputs where the ⟨ voltage ⟩ field follows a Gaussian distribution but never exceeds 20 mV.”

问问这篇 Paper

问问你的智能体。

Lune 读过与它相关的顶会 Paper,每个回答都会注明依据哪几篇。

可以从这些问题问起

智能体调用

Lunesearch_papers

在 Lune 里问

免费开始,无需绑卡

引用它的顶会 Paper2

问问它们各自怎么用它

相关 Paper

黄昏的海面,两侧是细线勾勒的悬崖