Replication Artifact for Denoising Fault Localization with Test Line Proximity

Read full text
Authors: Marius Smytzek
Cited by: 1

Abstract

This artifact implements and evaluates Proximity-Weighted Fault Localization (PWFL), a fault-localization method that augments classical statistical fault localization (SFL) with temporal proximity information from runtime execution. The core motivation is that a failing test can execute many subject lines, but lines executed closer to the failure-triggering test event are often more informative for debugging. PWFL captures this intuition by weighting subject execution evidence according to proximity, then integrating those weights into established suspiciousness formulas. The implementation uses SFLKit 0.5.7, in which PWFL is included directly. This repository provides both (1) reproducibility scripts for the full paper workflow and (2) a reusable CLI for running PWFL on local pytest-based projects. The default CLI analysis mode is line-based (`line`), with configurable alternatives through --mode. At a high level, the workflow is: Collect events from instrumented test executions. Analyze events into model-ready structures and weighted evidence. Compute suspiciousness rankings and export JSON outputs. This organization supports end-to-end replication and selective reruns. Intermediate artifacts are stored in dedicated directories so users can rerun specific phases without recomputing everything. What the artifact supports The artifact supports two complementary use cases: Paper result reproduction: The scripts (evaluation.py, run_small_eval.py) reproduce baseline PWFL results and optional extensions (PRFL and test-case purification), including summarization outputs. Reusable local analysis: The pwfl CLI can be applied to arbitrary pytest projects, with configurable tests, metrics, analysis mode, workers, timeout, and work-directory behavior. A key design decision is that test files are instrumented to capture test events correctly, while test-source lines are excluded from the final ranked output, so rankings remain actionable for the subject code. Reproducibility modes The repository provides practical reproducibility paths: Smoke validation (python docker_pwfl.py small-eval --tiny): A short run that checks the environment, instrumentation, analysis, and output generation on a small subset. Full evaluation (via python docker_pwfl.py shell): Allows to completely run, intended to replicate reported results; this is computationally expensive and can require multiple days depending on hardware and chosen parallelism. This split makes it possible to quickly verify functionality first, then scale to full reproduction. Docker-based isolation The Docker workflow (docker_pwfl.py and Dockerfile) is designed for isolated and portable execution. It supports: Notebook demonstration (python docker_pwfl.py example). Reduced evaluation (python docker_pwfl.py small-eval, including --tiny smoke mode). Reusable CLI demonstration on the bundled middle subject (python docker_pwfl.py middle-cli), exporting ranking artifacts for inspection. This path avoids host-environment coupling and helps reviewers reproduce runs consistently. Reusability characteristics The artifact is structured to satisfy software artifact reuse expectations: Installable via pip (pip install -e .) with a stable CLI entrypoint (pwfl). Configurable execution knobs for analysis mode, metric, test selection, workers, and timeout. Machine-readable outputs (JSON) for downstream experiments and comparisons. Modular Python package layout in src/pwfl/ for extension and repurposing. Command-line completion support through argcomplete. Subject scope and practical notes The evaluation targets a curated set of real-world subjects (listed in README.md). The repository also documents practical caveats for specific cases. These notes are included to improve replication fidelity and to clarify expected environmental differences. Why is this artifact useful? This artifact is not only a replication package; it is also a reusable framework for fault-localization research and practice. It combines: a principled proximity-weighted model, reproducible experiment orchestration, configurable local CLI execution, and and exportable outputs for further analysis. As a result, users can both validate the reported study and apply the same methodology to new projects with minimal adaptation.

Publication details

Journal / source
Zenodo (CERN European Organization for Nuclear Research)
Publication date
10 April 2026
Language
EN