Incremental program testing using program dependence graphs

S Bates, S Horwitz - Proceedings of the 20th ACM SIGPLAN-SIGACT …, 1993 - dl.acm.org
Program dependence graphs have been proposed for use in optimizing, vectorizing, and
parallelizing compilers, and for program integration. This paper proposes their use as the …

Recrash: Making software failures reproducible by preserving object states

S Artzi, S Kim, MD Ernst - … European Conference Paphos, Cyprus, July 7 …, 2008 - Springer
It is very hard to fix a software failure without being able to reproduce it. However,
reproducing a failure is often difficult and time-consuming. This paper proposes a novel …

Functional testing, structural testing and code reading: What fault type do they each detect?

N Juristo, S Vegas - Empirical methods and studies in software …, 2003 - Springer
The origin of the study described here is the experiment performed by Basili and Selby,
further replicated by Kamsties and Lott, and once again by Wood et al. These experiments …

Incremental algorithms for inter-procedural analysis of safety properties

CL Conway, KS Namjoshi, D Dams… - … Aided Verification: 17th …, 2005 - Springer
Automaton-based static program analysis has proved to be an effective tool for bug finding.
Current tools generally re-analyze a program from scratch in response to a change in the …

PIE: A dynamic failure-based technique

JM Voas - IEEE Transactions on software Engineering, 1992 - search.proquest.com
A dynamic technique is presented for statistically estimating 3 program characteristics that
affect a program's computational behavior: 1. the probability that a particular section of a …

Tutorial: Static analysis and dynamic testing of computer software

RE Fairley - Computer, 1978 - ieeexplore.ieee.org
Tutorial: Static Analysis and Dynamic Testing of Computer Software Page 1 Tutorial: Static
Analysis and Dynamic Testing of Computer Software Richard E. Fairley Colorado State …

Covering and uncovering equivalent mutants

D Schuler, A Zeller - Software Testing, Verification and …, 2013 - Wiley Online Library
Mutation testing measures the adequacy of a test suite by seeding artificial defects
(mutations) into a program. If a test suite fails to detect a mutation, it may also fail to detect …

Lightweight defect localization for Java

V Dallmeier, C Lindig, A Zeller - … Conference, Glasgow, UK, July 25-29 …, 2005 - Springer
A common method to localize defects is to compare the coverage of passing and failing
program runs: A method executed only in failing runs, for instance, is likely to point to the …

Failure sketching: A technique for automated root cause diagnosis of in-production failures

B Kasikci, B Schubert, C Pereira, G Pokam… - Proceedings of the 25th …, 2015 - dl.acm.org
Developers spend a lot of time searching for the root causes of software failures. For this,
they traditionally try to reproduce those failures, but unfortunately many failures are so hard …

A strategy for using genetic algorithms to automate branch and fault-based testing

BF Jones, DE Eyres, HH Sthamer - the computer journal, 1998 - academic.oup.com
Genetic algorithms have been used successfully to generate software test data
automatically; all branches were covered with substantially fewer generated tests than …