Abstract.A set of mutation operators for SQL queries that retrieve information from a database is developed and tested against a set of queries drawn from the NIST SQL Conformance Test Suite. The mutation operators cover a wide spectrum of SQL features, including the handling of null values. Additional experiments are performed to explore whether the cost of executing mutants can be reduced using selective mutation or the test suite size can be reduced by using an appropriate ordering of the mutants. The SQL mutation approach can be helpful in assessing the adequacy of database test cases and their development, and as a tool for systematically injecting faults in order to compare different database testing techniques.
SQL is a ubiquitous language used in a wide range of applications for accessing the data stored in relational databases. However, the usual software testing techniques are not designed to address some important features of SQL. We present a set of practical guidelines for designing white-box tests cases that reasonably exercise the way in which an SQL query processes the stored data. These guidelines are illustrated using an example.
Controlled experiments are a powerful way to assess and compare the effectiveness of different techniques. In this paper we present the experimental results of the evaluation of the effectiveness of a structural test coverage criterion developed for SQL queries when used by a tester to guide the selection of database test cases. We describe a controlled experiment designed for comparing this criterion with other conventional criteria such as equivalence partitioning and boundary value analysis. The results show that 1) the use of the structural coverage allows the tester to develop more effective test cases, 2) the effectiveness is higher when considering the kind of faults that are more specifically related to SQL than other kinds of faults, and 3) the results give us some insight into how to improve the coverage criterion.
Keeping the test databases as small as possible leads to faster execution of tests and facilitates the task of completing the test cases and evaluating the actual outputs against the expected. In this paper we present an automated approach to database reduction that considers an initial database that may be a copy of a production database and the set of queries that are executed against it. The database is reduced in order to preserve the coverage of the data with respect to the queries attaining large reductions with very similar fault detection ability.
An approach to automatically generate test data for SQL queries is described in this paper. Both the database schema and queries to be tested are used to guide the generation. The different test situations on the queries are identified using a condition coverage criterion and they are represented with a set of constraints that the information in the database must fulfill. Instances of a database that satisfy the constraints and thus constitute a test database are generated using the Alloy toolset. A case study of a real-life application is presented to illustrate and evaluate this work.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.