Supporting Controlled Experimentation with Testing Techniques: An Infrastructure and its Potential Impact
TLDR
The infrastructure that is being designed and constructed to support controlled experimentation with testing and regression testing techniques is described and the impact that this infrastructure has had and can be expected to have.Abstract:
Where the creation, understanding, and assessment of software testing and regression testing techniques are concerned, controlled experimentation is an indispensable research methodology. Obtaining the infrastructure necessary to support such experimentation, however, is difficult and expensive. As a result, progress in experimentation with testing techniques has been slow, and empirical data on the costs and effectiveness of techniques remains relatively scarce. To help address this problem, we have been designing and constructing infrastructure to support controlled experimentation with testing and regression testing techniques. This paper reports on the challenges faced by researchers experimenting with testing techniques, including those that inform the design of our infrastructure. The paper then describes the infrastructure that we are creating in response to these challenges, and that we are now making available to other researchers, and discusses the impact that this infrastructure has had and can be expected to have.read more
Citations
More filters
Proceedings ArticleDOI
Does the failing test execute a single or multiple faults?: an approach to classifying failing tests
TL;DR: A technique that can be used to distinguish failing tests that executed a single fault from those that executed multiple faults is proposed in this paper and results indicate that the performance in terms of evaluation measures precision, recall, and F-measure is promising.
Proceedings ArticleDOI
Quantitative program slicing: separating statements by relevance
TL;DR: Q-slicing is introduced, a novel approach that quantifies the relevance of each statement in a slice that helps users and tools focus their attention first on the parts of slices that matter the most.
Journal ArticleDOI
Hybrid Program Dependence Approximation for Effective Dynamic Impact Prediction
TL;DR: This work presents a novel dynamic impact analysis called Diver which leverages both the information provided by the dependence graph and method-execution events to identify runtime method-level dependencies, hence dynamic impact sets, much more precisely without reducing safety and at acceptable costs.
Journal ArticleDOI
The Impacts of Techniques, Programs and Tests on Automated Program Repair: An Empirical Study
TL;DR: An extensive study on repairing 180 seeded and real faults from 17 small to large sized programs, including GenProg, RSRepair, Brute-force-based technique, AE and Kali, on the repair results demonstrates a number of interesting findings.
Proceedings ArticleDOI
Hybrid Directed Test Suite Augmentation: An Interleaving Framework
TL;DR: A framework for hybrid test suite augmentation that allows test case generation algorithms to be interleaved dynamically and that can easily incorporate new algorithms, interleaving strategies, and choices of other parameters that influence algorithm performance is presented.
References
More filters
Book
Case Study Research: Design and Methods
TL;DR: In this article, buku ini mencakup lebih dari 50 studi kasus, memberikan perhatian untuk analisis kuantitatif, membahas lebah lengkap penggunaan desain metode campuran penelitian, and termasuk wawasan metodologi baru.
Book Chapter
Case study research
TL;DR: The comprehensive and accessible nature of this collection will make it an essential and lasting handbook for researchers and students studying organizations.
Book
Research methods knowledge base
TL;DR: The Research Methods Knowledge Base is a comprehensive web-based textbook that addresses all of the topics in a typical introductory undergraduate or graduate course in social research methods and uses an informal, conversational style to engage both the newcomer and the more experienced student of research.
Book
Experimentation in Software Engineering: An Introduction
TL;DR: The purpose of Experimentation in Software Engineering: An Introduction is to introduce students, teachers, researchers, and practitioners to experimentation and experimental evaluation with a focus on software engineering, and to provide guidelines for performing experiments evaluating methods, techniques and tools in software engineering.
Related Papers (5)
Empirical evaluation of the tarantula automatic fault-localization technique
James A. Jones,Mary Jean Harrold +1 more