Shaker 在 Python 项目 flaky 测试检测中的评估
原标题:Evaluating Shaker for Flaky Test Detection in Python Projects
AI 摘要
该研究首次针对 Python 项目评估 Shaker 的 flaky test 检测能力。研究者从 Gruber 等人的真实数据集抽取 137 个非顺序依赖的 flaky 测试,在相同执行预算下对比 Shaker 与普通重跑(ReRun)。结果显示 Shaker 未带来统计显著优势(37.2% vs 35.8%),原因在于不到一半的真实 flaky 测试在独立硬件上可复现,且可复现的测试多由网络交互和随机性而非 Shaker 针对的并发问题导致。研究还指出跨执行环境复用 flaky 测试基准会将真实 flaky 测试静默转为假阴性,从而低估工具召回率。
正文节选
Evaluating Shaker for Flaky Test Detection in Python Projects Abstract. Flaky tests pass or fail non-deterministically on unchanged code, eroding trust in test suites and inflating the cost of every failure. Shaker detects them by injecting resource contention (CPU, memory, and I/O stress) to amplify non-determinism caused by concurrent execution, and was reported to detect 95% of the flaky tests in a Java and Android benchmark against 37.5% for plain re-execution (ReRun). We present the first e