中文
相关论文

相关论文: Production-Driven Patch Generation and Validation

200 篇论文

Fuzzing -- testing programs with random inputs -- has become the prime technique to detect bugs and vulnerabilities in programs. To generate inputs that cover new functionality, fuzzers require execution feedback from the program -- for…

软件工程 · 计算机科学 2020-12-29 Rahul Gopinath , Bachir Bendrissou , Björn Mathis , Andreas Zeller

While there has been plenty of work on generating tests from existing code, there has been limited work on generating tests from issues. A correct test must validate the code patch that resolves the issue. This paper focuses on the scenario…

软件工程 · 计算机科学 2025-06-02 Toufique Ahmed , Jatin Ganhotra , Rangeet Pan , Avraham Shinnar , Saurabh Sinha , Martin Hirzel

Software often fails in the field, however reproducing and debugging field failures is very challenging: the failure-inducing input may be missing, and the program setup can be complicated and hard to reproduce by the developers. In this…

软件工程 · 计算机科学 2023-09-21 Ashwin Kallingal Joshy , Benjamin Steenhoek , Xiuyuan Guo , Wei Le

During last years, researches have proposed novel repair approaches that automatically generate patches for repairing software bugs. Repair approaches can be loosely characterized along the main design philosophy such generate- and-validate…

软件工程 · 计算机科学 2019-02-13 Matias Martinez , Martin Monperrus

Unit testing verifies the presence of faults in individual software components. Previous research has been targeting the automatic generation of unit tests through the adoption of random or search-based algorithms. Despite their…

软件工程 · 计算机科学 2022-04-13 Fabiano Pecorelli , Giovanni Grano , Fabio Palomba , Harald C. Gall , Andrea De Lucia

In the research of automated program repair (APR), benchmark datasets consisting of known defects in combination with test suites that indicate the defects are of high importance. They allow for an evidence-based comparison of different APR…

软件工程 · 计算机科学 2026-04-30 Adam Krafczyk , Klaus Schmid

Automated Program Repair (APR) can help developers automatically generate patches for bugs. Due to the impressive performance obtained using Large Pre-Trained Language Models (LLMs) on many code related tasks, researchers have started to…

软件工程 · 计算机科学 2023-02-01 Chunqiu Steven Xia , Lingming Zhang

We propose a path-based approach to program repair for imperative programs. Our repair framework takes as input a faulty program, a logic specification that is refuted, and a hint where the fault may be located. An iterative abstraction…

编程语言 · 计算机科学 2015-03-18 Heinz Riener , Rüdiger Ehlers , Görschwin Fey

Background: Testing and validation of the semantic correctness of patches provided by tools for Automated Program Repairs (APR) has received a lot of attention. Yet, the eventual acceptance or rejection of suggested patches for real world…

软件工程 · 计算机科学 2022-09-19 Aurora Papotti , Ranindya Paramitha , Fabio Massacci

Linux kernel bug repair is typically approached as a direct mapping from crash reports to code patches. In practice, however, kernel fixes undergo iterative revision on mailing lists before acceptance, with reviewer feedback shaping…

软件工程 · 计算机科学 2026-04-07 Luyao Bai , Kenan Alghythee , Hang Zhang , Xiaoguang Wang

Learning-based program repair has achieved good results in a recent series of papers. Yet, we observe that the related work fails to repair some bugs because of a lack of knowledge about 1) the application domain of the program being…

软件工程 · 计算机科学 2023-04-20 He Ye , Matias Martinez , Xiapu Luo , Tao Zhang , Martin Monperrus

Traditionally, mutation testing generates an abundance of small deviations of a program, called mutants. At industrial systems the scale and size of Facebook's, doing this is infeasible. We should not create mutants that the test suite…

软件工程 · 计算机科学 2021-01-28 Moritz Beller , Chu-Pan Wong , Johannes Bader , Andrew Scott , Mateusz Machalica , Satish Chandra , Erik Meijer

In this paper, we propose a testing framework for validating sanitizer implementations in compilers. Our core components are (1) a program generator specifically designed for producing programs containing undefined behavior (UB), and (2) a…

密码学与安全 · 计算机科学 2024-01-10 Shaohua Li , Zhendong Su

Fuzzing has been an important approach for finding bugs and vulnerabilities in programs. Many fuzzers deployed in industry run daily and can generate an overwhelming number of crashes. Diagnosing such crashes can be very challenging and…

软件工程 · 计算机科学 2022-09-07 Ashwin Kallingal Joshy , Wei Le

Identifying the root cause of a bug remains difficult for many developers because bug reports often lack a bug reproducing test case that reliably triggers the failure. Manually writing such test cases is time-consuming and requires…

软件工程 · 计算机科学 2026-03-10 Zhiwei Fei , Yue Pan , Federica Sarro , Jidong Ge , Marc Liu , Vincent Ng , He Ye

During the life cycle of software development, developers have to fix different kinds of bugs reported by testers or end users. The efficiency and effectiveness of fixing bugs have a huge impact on the reliability of the software as well as…

软件工程 · 计算机科学 2013-11-12 Jaechang Nam , Ning Chen

Each year, thousands of software vulnerabilities are discovered and reported to the public. Unpatched known vulnerabilities are a significant security risk. It is imperative that software vendors quickly provide patches once vulnerabilities…

密码学与安全 · 计算机科学 2017-07-26 Benjamin L. Bullough , Anna K. Yanchenko , Christopher L. Smith , Joseph R. Zipkin

Context: Bug bisection is a common technique used to identify a revision that introduces a bug or indirectly fixes a bug, and often involves executing multiple revisions of a project to determine whether the bug is present within the…

软件工程 · 计算机科学 2024-05-06 Ching Hang Mak , Shing-Chi Cheung

Repairnator is a bot. It constantly monitors software bugs discovered during continuous integration of open-source software and tries to fix them automatically. If it succeeds to synthesize a valid patch, Repairnator proposes the patch to…

软件工程 · 计算机科学 2018-10-16 Martin Monperrus , Simon Urli , Thomas Durieux , Matias Martinez , Benoit Baudry , Lionel Seinturier

High-quality and large-scale repositories of real bugs and their concise patches collected from real-world applications are critical for research in software engineering community. In such a repository, each real bug is explicitly…

软件工程 · 计算机科学 2021-03-02 Yanjie Jiang , Hui Liu , Nan Niu , Lu Zhang , Yamin Hu