Automatic Detection and Removal of Ineffective Mutants for the Mutation Analysis of Relational Database Schemas

Project Author
Issue Date
2017-12-27
Authors
McMinn, Phil
Wright, Chris J.
McCurdy, Colton J.
Kapfhammer, Gregory M.
Loading...
Thumbnail Image
Embargo
First Reader
Additional Readers
Keywords
software testing , software quality , software tools , relational databases
Abstract
Data is one of an organization's most valuable and strategic assets. Testing the relational database schema, which protects the integrity of this data, is of paramount importance. Mutation analysis is a means of estimating the fault-finding “strength” of a test suite. As with program mutation, however, relational database schema mutation results in many “ineffective” mutants that both degrade test suite quality estimates and make mutation analysis more time consuming. This paper presents a taxonomy of ineffective mutants for relational database schemas, summarizing the root causes of ineffectiveness with a series of key patterns evident in database schemas. On the basis of these, we introduce algorithms that automatically detect and remove ineffective mutants. In an experimental study involving the mutation analysis of 34 schemas used with three popular relational database management systems-HyperSQL, PostgreSQL, and SQLite-the results show that our algorithms can identify and discard large numbers of ineffective mutants that can account for up to 24 percent of mutants, leading to a change in mutation score for 33 out of 34 schemas. The tests for seven schemas were found to achieve 100 percent scores, indicating that they were capable of detecting and killing all non-equivalent mutants. The results also reveal that the execution cost of mutation analysis may be significantly reduced, especially with “heavyweight” DBMSs like PostgreSQL.
Description
Chair
Major
Department
Computer Science
Recorder
License
Citation
P. McMinn, C. J. Wright, C. J. McCurdy and G. M. Kapfhammer, "Automatic Detection and Removal of Ineffective Mutants for the Mutation Analysis of Relational Database Schemas," in IEEE Transactions on Software Engineering, vol. 45, no. 5, pp. 427-463, 1 May 2019. doi: 10.1109/TSE.2017.2786286
Version
Final manuscript post peer review, without publisher's formatting or copy editing (postprint)
Honors
Publisher
Institute of Electrical and Electronics Engineers (IEEE)
Series