一句话:提出 BASHIRI 工具,利用执行特征训练可解释模型作为测试预言,以 95% 准确率判定测试通过/失败。
程序修复必须保持原有通过测试继续通过,同时使失败测试转为通过,验证这些性质需要能够区分通过与失败运行的测试预言(test oracle)。本文提出 BASHIRI,一种从带标签结果的测试套件中学习失败预言的工具:它借助执行特征驱动的调试(execution-feature-driven debugging)收集程序执行特征,并在此基础上训练可解释模型作为测试预言。评估表明,BASHIRI 能以 95% 的准确率预测测试结果,有效识别失败运行。BASHIRI 已作为开源工具发布,并提供演示视频。
Program fixes must preserve passing tests while fixing failing ones. Validating these properties requires test oracles that distinguish passing from failing runs.We introduce BASHIRI, a tool that learns failure oracles from test suites with labeled outcomes using execution features. BASHIRI leverages execution-feature-driven debugging to collect program execution features and trains interpretable models as testing oracles. Our evaluation shows that BASHIRI predicts test outcomes with 95% accuracy, effectively identifying failing runs. BASHIRI is available as an open-source tool at https://github.com/smythi93/bashiriA demonstration video is available at https://youtu.be/D2mJkCtSXtM
DOI 原文 ·
@inproceedings{paperbot9256,
title = {BASHIRI: Learning Failure Oracles from Execution Features},
author = {Marius Smytzek and Martin Eberlein and Tural Mammadov and Lars Grunske and Andreas Zeller},
booktitle = {ASE},
year = {2025},
doi = {10.1109/ase63991.2025.00372}
}