Abstract
Database application programs are ubiquitous; hence, good techniques for testing them are needed. Several approaches to testing database applications have been proposed recently, including test generation techniques and adequacy criteria. Tuya et al. proposed mutation-based adequacy criteria for database queries and developed a set of mutation operators for Structured Query Language SELECT statements. This paper extends that approach by integrating it with analysis and instrumentation of the application bytecode. The design and implementation of a tool, Java Database Application Mutation Analyser (JDAMA), are described. JDAMA instruments application bytecode so as to compare the results of queries executed by the application under test to the results of mutants of those queries. JDAMA can be used to support mutation testing for Java database applications. A second, potentially more useful application of JDAMA is to support experiments evaluating testing techniques for database applications, in which query mutation is used to seed faults into subject applications. The paper illustrates these uses of JDAMA with experiments comparing two approaches to test generation and experiments evaluating coverage criteria.
Original language | English (US) |
---|---|
Pages (from-to) | 241-263 |
Number of pages | 23 |
Journal | Software Testing Verification and Reliability |
Volume | 21 |
Issue number | 3 |
DOIs | |
State | Published - Sep 2011 |
Keywords
- Java
- database application testing
- empirical evaluation
- mutation testing
- software testing
ASJC Scopus subject areas
- Software
- Safety, Risk, Reliability and Quality