English
Related papers

Related papers: What Made This Test Flake? Pinpointing Classes Res…

200 papers

To fix a software bug, you must first find it. As software grows in size and complexity, finding bugs is becoming harder. To solve this problem, measures have been developed to rank lines of code according to their "suspiciousness" wrt…

Software Engineering · Computer Science 2018-10-02 David Landsberg , Earl Barr

Despite various approaches being employed to detect vulnerabilities, the number of reported vulnerabilities shows an upward trend over the years. This suggests the problems are not caught before the code is released, which could be caused…

Cryptography and Security · Computer Science 2025-02-14 Karl Tamberg , Hayretdin Bahsi

We present JS-TOD (JavaScript Test Order-dependency Detector), a tool that can extract, reorder, and rerun Jest tests to reveal possible order-dependent test flakiness. Test order dependency is one of the leading causes of test flakiness.…

Software Engineering · Computer Science 2025-09-03 Negar Hashemi , Amjed Tahir , Shawn Rasheed , August Shi , Rachel Blagojevic

Fault localization (FL) is a critical but time-consuming task in software debugging, aiming to identify faulty code elements. While recent advances in large language models (LLMs) have shown promise for FL, they often struggle with complex…

Software Engineering · Computer Science 2025-09-26 Xinyu Shi , Zhenhao Li , An Ran Chen

Fault localization is a process to find the location of faults. It determines the root cause of the failure. It identifies the causes of abnormal behaviour of a faulty program. It identifies exactly where the bugs are. Existing fault…

Software Engineering · Computer Science 2012-01-20 A. Askarunisa , T. Manju , B. Giri Babu

Influence functions (IFs) are a powerful tool for detecting anomalous examples in large scale datasets. However, they are unstable when applied to deep networks. In this paper, we provide an explanation for the instability of IFs and…

Computation and Language · Computer Science 2023-05-03 Thang Nguyen-Duc , Hoang Thanh-Tung , Quan Hung Tran , Dang Huu-Tien , Hieu Ngoc Nguyen , Anh T. V. Dau , Nghi D. Q. Bui

Understanding the root cause of a defect is critical to isolating and repairing buggy behavior. We present Causal Testing, a new method of root-cause analysis that relies on the theory of counterfactual causality to identify a set of…

Software Engineering · Computer Science 2020-02-20 Brittany Johnson , Yuriy Brun , Alexandra Meliou

It is generally acknowledged that software testing is both challenging and time-consuming. Understanding the factors that may positively or negatively affect testing effort will point to possibilities for reducing this effort. Consequently…

Software Engineering · Computer Science 2014-10-07 Amjed Tahir , Stephen G. MacDonell , Jim Buchan

Federated learning (FL), as an emerging artificial intelligence (AI) approach, enables decentralized model training across multiple devices without exposing their local training data. FL has been increasingly gaining popularity in both…

Machine Learning · Computer Science 2023-10-23 Victoria Huang , Shaleeza Sohail , Michael Mayo , Tania Lorido Botran , Mark Rodrigues , Chris Anderson , Melanie Ooi

Satisfiability solving is a common technique for formal verification forming the basis of many proof and model checking systems. Failure to show a proof obligation will produce a counterexample or failure trace with typically many thousands…

Logic in Computer Science · Computer Science 2026-03-24 Lars-Henrik Eriksson

Background: Debugging is a key task during the software development cycle. Spectrum-based Fault Localization (SFL) is a promising technique to improve and automate debugging. SFL techniques use control-flow spectra to pinpoint the most…

Debugging is one of the most time-consuming and expensive tasks in software development and circuit design. Several formula-based fault localisation (FBFL) methods have been proposed, but they fail to guarantee a set of diagnoses across all…

Software Engineering · Computer Science 2025-12-03 Pedro Orvalho , Marta Kwiatkowska , Mikoláš Janota , Vasco Manquinho

Taint-style vulnerabilities comprise a majority of fuzzer discovered program faults. These vulnerabilities usually manifest as memory access violations caused by tainted program input. Although fuzzers have helped uncover a majority of…

Cryptography and Security · Computer Science 2017-06-02 Bhargava Shastry , Federico Maggi , Fabian Yamaguchi , Konrad Rieck , Jean-Pierre Seifert

Statistical fault localization (SFL) techniques use execution profiles and success/failure information from software executions, in conjunction with statistical inference, to automatically score program elements based on how likely they are…

Software Engineering · Computer Science 2021-02-15 Yigit Kucuk , Tim A. D. Henderson , Andy Podgurski

Traditional spectrum-based fault localization (SBFL) exploits differences in a program's coverage spectrum when run on passing and failing test cases. However, such runs can provide a wealth of additional information beyond mere coverage.…

Software Engineering · Computer Science 2025-03-07 Julian Aron Prenner , Romain Robbes

Software engineering requires rigorous testing to guarantee the product's quality. Semantic testing of functional correctness is challenged by nondeterminism in behavior, which makes testers difficult to write and reason about. This thesis…

Programming Languages · Computer Science 2023-07-07 Yishuai Li

Vulnerability detectors based on deep learning (DL) models have proven their effectiveness in recent years. However, the shroud of opacity surrounding the decision-making process of these detectors makes it difficult for security analysts…

Cryptography and Security · Computer Science 2024-02-22 Baijun Cheng , Shengming Zhao , Kailong Wang , Meizhen Wang , Guangdong Bai , Ruitao Feng , Yao Guo , Lei Ma , Haoyu Wang

Applying deductive verification to formally prove that a program respects its formal specification is a very complex and time-consuming task due in particular to the lack of feedback in case of proof failures. Along with a non-compliance…

Software Engineering · Computer Science 2015-08-10 Guillaume Petiot , Nikolai Kosmatov , Bernard Botella , Alain Giorgetti , Jacques Julliand

Tangled code changes, commits that conflate unrelated modifications such as bug fixes, refactorings, and enhancements, introduce significant noise into bug datasets and adversely affect the performance of bug prediction models. Addressing…

Software Engineering · Computer Science 2025-10-28 Md Nahidul Islam Opu , Shaowei Wang , Shaiful Chowdhury

To remain useful for their users, software systems need to continuously enhance and extend their functionality. Nevertheless, in many object-oriented applications, features are not represented explicitly. The lack of modularization is known…

Software Engineering · Computer Science 2014-07-07 T. Pandiyavathi