CoReX: Context-Aware Refinement-Based Slicing for Debugging Regression Failures
Sahar Badihi, Julia Rubin
Abstract
Troubleshooting regression failures is one of the most frequent yet time-consuming development tasks. To help with this task, numerous approaches aim to narrow down developers' attention to the subset of code statements relevant to the failure. The most prominent of these approaches are based on program slicing, as slicing not only identifies a subset of relevant statements but also maintains the flow of information between these statements.
By surveying more than 50 practitioners from eight different countries, we observe that existing dual-version slicing-based approaches have two main limitations: (a) to minimize the number of statements presented to the developer, they omit contextual information required to truly understand the failure and (b) to keep information propagation between the statements in the slice intact, they include lengthy computations that are not necessary to understand the failure. We use these observations to define a new dual-version slicing approach for regression scenarios, called CoReX. We evaluate CoReX on a large number of subjects, comparing it with other existing dual-version slicing approaches. The results of our evaluation show that CoReX outperforms these approaches both in the quantitative metrics used in prior work and in alignment with developers' expectations. We believe our work provides grounds for efficient integration of slicing-based approaches into development workflows.
• Software and its engineering → Software testing and debugging.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext c7a9dc5b-c402-40be-83a7-a27bfcb186eeBuilds on4
- Causal testing: understanding defects' root causesBrittany Johnson, Yuriy Brun, Alexandra MeliouICSE 2020 · 39 citations
- When does my program do this? learning circumstances of software behaviorAlexander Kampmann, Nikolas Havrikov, Ezekiel O. Soremekun, Andreas ZellerFSE 2020 · 29 citations
- Evaluating the Impact of Experimental Assumptions in Automated Fault LocalizationEzekiel O. Soremekun, Lukas Kirschner, Marcel Böhme, Mike PapadakisICSE 2023 · 9 citations
- Responsibility in Context: On Applicability of Slicing in Semantic Regression AnalysisSahar Badihi, Khaled Ahmed, Yi Li, Julia RubinICSE 2023 · 2 citations
Related papers
- Log-based slicing for system-level test casesSalma Messaoudi, Donghwan Shin, Annibale Panichella, Domenico Bianculli et al.ISSTA 2021 · 20 citations
- Empirically evaluating readily available information for regression test optimization in continuous integrationDaniel Elsner, Florian Hauer, Alexander Pretschner, Silke ReimerISSTA 2021 · 45 citations
- iCoRe: An Iterative Correlation-Aware Retriever for Bug Reproduction Test GenerationJunyi Wang, Jialun Cao, Zhongxin LiuFSE 2026
- CausalRepair: Bridging the Causality Gap in Large Language Model-Based Automated Program Repair via Dual-SlicingLinhao Wu, Yizhou Chen, Zhen Yang, Pengyu Xue et al.ISSTA 2026
- Exploring Experiences with Automated Program Repair in PracticeFairuz Nawer Meem, Justin Smith, Brittany JohnsonICSE 2024 · 14 citations
