Full predicate coverage for testing SQL database queries

In the field of database applications a considerable part of the business logic is implemented using a semi-declarative language: the Structured Query Language (SQL). Because of the different semantics of SQL compared to other procedural languages, the conventional coverage criteria for testing are...

Descripción completa

Detalles Bibliográficos
Autores: Tuya González, Pablo Javier|||0000-0002-1091-934X, Suárez Cabal, María José|||0000-0001-8262-2871, Riva Álvarez, Claudio A. de la|||0000-0001-5592-9683
Tipo de recurso: artículo
Fecha de publicación:2010
País:España
Institución:Universidad de Oviedo (UNIOVI)
Repositorio:RUO. Repositorio Institucional de la Universidad de Oviedo
Idioma:inglés
OAI Identifier:oai:digibuo.uniovi.es:10651/6595
Acceso en línea:http://hdl.handle.net/10651/6595
https://dx.doi.org/10.1002/stvr.424
Access Level:acceso abierto
Palabra clave:Software testing
Database testing
MCDC
Descripción
Sumario:In the field of database applications a considerable part of the business logic is implemented using a semi-declarative language: the Structured Query Language (SQL). Because of the different semantics of SQL compared to other procedural languages, the conventional coverage criteria for testing are not directly applicable. This paper presents a criterion specifically tailored for SQL queries (SQLFpc). It is based on Masking Modified Condition Decision Coverage (MCDC) or Full Predicate Coverage and takes into account a wide range of the syntax and semantics of SQL, including selection, joining, grouping, aggregations, subqueries, case expressions and null values. The criterion assesses the coverage of the test data in relation to the query that is executed and it is expressed as a set of rules that are automatically generated and efficiently evaluated against a test database. The use of the criterion is illustrated in a case study which includes complex queries