English
Related papers

Related papers: An Empirical Study on Failed Error Propagation in …

200 papers

Fault localization is a critical step in software maintenance. Yet, many existing techniques, such as Spectrum-Based Fault Localization (SBFL), rely heavily on the availability of fault-triggering tests to be effective. In practice,…

Software Engineering · Computer Science 2025-10-28 Md Nakhla Rafi , Lorena Barreto Simedo Pacheco , An Ran Chen , Jinqiu Yang , Tse-Hsun , Chen

Field failures, that is, failures caused by faults that escape the testing phase leading to failures in the field, are unavoidable. Improving verification and validation activities before deployment can identify and timely remove many but…

Software Engineering · Computer Science 2017-09-01 Luca Gazzola , Leonardo Mariani , Fabrizio Pastore , Mauro Pezz`e

Software bugs are prevalent in modern software systems and notoriously hard to debug manually. Therefore, a large body of research efforts have been dedicated to automated software debugging, including both automated fault localization and…

Software Engineering · Computer Science 2019-10-04 Yiling Lou , Ali Ghanbari , Xia Li , Lingming Zhang , Dan Hao , Lu Zhang

Well-designed and publicly available datasets of bugs are an invaluable asset to advance research fields such as fault localization and program repair as they allow directly and fairly comparison between competing techniques and also the…

Software Engineering · Computer Science 2021-11-12 Victor Sobreira , Thomas Durieux , Fernanda Madeiral , Martin Monperrus , Marcelo A. Maia

Fault localization is a fundamental aspect of debugging, aiming to identify code regions likely responsible for failures. Traditional techniques primarily correlate statement execution with failures, yet program behavior is influenced by…

Software Engineering · Computer Science 2025-02-27 Marius Smytzek , Martin Eberlein , Lars Grunske , Andreas Zeller

Benchmarks are among the main drivers of progress in software engineering research. However, many current benchmarks are limited by inadequate system oracles and sparse unit tests. Our Tests4Py benchmark, derived from the BugsInPy…

Software Engineering · Computer Science 2024-05-15 Marius Smytzek , Martin Eberlein , Batuhan Serce , Lars Grunske , Andreas Zeller

Modern programming languages, such as Java and C#, typically provide features that handle exceptions. These features separate error-handling code from regular source code and are proven to enhance the practice of software reliability,…

Software Engineering · Computer Science 2017-04-05 Guilherme B. de Pádua , Weiyi Shang

Bug-fix benchmarks are essential for evaluating methodologies in automatic program repair (APR) and fault localization (FL). However, existing benchmarks, exemplified by Defects4J, need to evolve to incorporate recent bug-fixes aligned with…

Software Engineering · Computer Science 2024-11-04 André Silva , Nuno Saavedra , Martin Monperrus

We describe a new concrete approach to giving predictable error locations for sequential (flow-sensitive) effect systems. Prior implementations of sequential effect systems rely on either computing a bottom-up effect and comparing it to a…

Programming Languages · Computer Science 2023-08-01 Colin S. Gordon , Chaewon Yun

JDBC remains a key technology for database access in Java applications. Since the database dictionary and the Java type system have distinct scopes, developers inevitably need to deal with bugs in SQL-to-Java type mappings. We propose an…

Databases · Computer Science 2026-05-05 Thomas James Kirz , Werner Dietl , Mattias Ulbrich , Stefanie Scherzinger

Context: Conducting experiments is central to research machine learning research to benchmark, evaluate and compare learning algorithms. Consequently it is important we conduct reliable, trustworthy experiments. Objective: We investigate…

Testability is the probability whether tests will detect a fault, given that a fault in the program exists. How efficiently the faults will be uncovered depends upon the testability of the software. Various researchers have proposed…

Software Engineering · Computer Science 2013-08-16 Sujata Khatri , R. S. Chhillar , V. B. Singh

In software engineering, impact analysis involves predicting the software elements (e.g., modules, classes, methods) potentially impacted by a change in the source code. Impact analysis is required to optimize the testing effort. In this…

Software Engineering · Computer Science 2024-11-14 Vincenzo Musco , Martin Monperrus , Philippe Preux

Unit testing is a vital part of the software development process and involves developers writing code to verify or assert production code. Furthermore, to help comprehend the test case and troubleshoot issues, developers have the option to…

Software Engineering · Computer Science 2023-03-02 Taryn Takebayashi , Anthony Peruma , Mohamed Wiem Mkaouer , Christian D. Newman

Fault injection is a technique to measure the robustness of a program to errors by introducing faults into the program under test. Following a fault injection experiment, Error Propagation Analysis (EPA) is deployed to understand how errors…

Software Engineering · Computer Science 2023-12-29 Stefan Winter , Abraham Chan , Habib Saissi , Karthik Pattabiraman , Neeraj Suri

Properly benchmarking Automated Program Repair (APR) systems should contribute to the development and adoption of the research outputs by practitioners. To that end, the research community must ensure that it reaches significant milestones…

Software Engineering · Computer Science 2019-02-18 Kui Liu , Anil Koyuncu , Tegawendé F. Bissyandé , Dongsun Kim , Jacques Klein , Yves Le Traon

Software testing is one of the very important Quality Assurance (QA) components. A lot of researchers deal with the testing process in terms of tester motivation and how tests should or should not be written. However, it is not known from…

Software Engineering · Computer Science 2022-01-04 Matej Madeja , Jaroslav Porubän , Michaela Bačíková , Matúš Sulír , Ján Juhár , Sergej Chodarev , Filip Gurbáľ

The null-type is a major source of faults in Java programs, and its overuse has a severe impact on software maintenance. Unfortunately traditional mutation testing operators do not cover null-type faults by default, hence cannot be used as…

Software Engineering · Computer Science 2020-04-10 Ali Parsai , Serge Demeyer

Logic programs are now used as a representation of object-oriented source code in academic prototypes for about a decade. This representation allows a clear and concise implementation of analyses of the object-oriented source code. The full…

Software Engineering · Computer Science 2013-01-14 Richard Tantius , Daniel Speicher , Andreas Behrend

Validating the correctness of network protocol implementations is highly challenging due to the oracle and traceability problems. The former determines when a protocol implementation can be considered buggy, especially when the bugs do not…

Software Engineering · Computer Science 2025-04-28 Mingwei Zheng , Danning Xie , Qingkai Shi , Chengpeng Wang , Xiangyu Zhang