A survey of flaky tests
Tests that fail inconsistently, without changes to the code under test, are described as flaky.
Flaky tests do not give a clear indication of the presence of software bugs and thus limit the …
Flaky tests do not give a clear indication of the presence of software bugs and thus limit the …
An empirical analysis of flaky tests
Regression testing is a crucial part of software development. It checks that software changes
do not break existing functionality. An important assumption of regression testing is that test …
do not break existing functionality. An important assumption of regression testing is that test …
[PDF][PDF] Finding and Reproducing Heisenbugs in Concurrent Programs.
Concurrency is pervasive in large systems. Unexpected interference among threads often
results in “Heisenbugs” that are extremely difficult to reproduce and eliminate. We have …
results in “Heisenbugs” that are extremely difficult to reproduce and eliminate. We have …
Automated software test generation: some challenges, solutions, and recent advances
G Candea, P Godefroid - Computing and Software Science: State of the …, 2019 - Springer
The automation of software testing promises to delegate to machines what is otherwise the
most labor-intensive and expensive part of software development. The past decade has …
most labor-intensive and expensive part of software development. The past decade has …
A randomized scheduler with probabilistic guarantees of finding bugs
This paper presents a randomized scheduler for finding concurrency bugs. Like current
stress-testing methods, it repeatedly runs a given test program with supplied inputs …
stress-testing methods, it repeatedly runs a given test program with supplied inputs …
Concurrent bug patterns and how to test them
E Farchi, Y Nir, S Ur - Proceedings international parallel and …, 2003 - ieeexplore.ieee.org
We present and categorize a taxonomy of concurrent bug patterns. We then use the
taxonomy to create new timing heuristics for ConTest. Initial industrial experience indicates …
taxonomy to create new timing heuristics for ConTest. Initial industrial experience indicates …
Delay-bounded scheduling
We provide a new characterization of scheduling nondeterminism by allowing deterministic
schedulers to delay their next-scheduled task. In limiting the delays an otherwise …
schedulers to delay their next-scheduled task. In limiting the delays an otherwise …
CHESS: Systematic stress testing of concurrent software
Concurrency is a fundamental attribute of systems software. Asynchronous computation is
the norm in important software components such as operating systems, databases, and web …
the norm in important software components such as operating systems, databases, and web …
Research in concurrent software testing: a systematic review
The current increased demand for distributed applications in domains such as web services
and cloud computing has significantly increased interest in concurrent programming. This …
and cloud computing has significantly increased interest in concurrent programming. This …
Sherlock: scalable deadlock detection for concurrent programs
We present a new technique to find real deadlocks in concurrent programs that use locks.
For 4.5 million lines of Java, our technique found almost twice as many real deadlocks as …
For 4.5 million lines of Java, our technique found almost twice as many real deadlocks as …