Publication:
Generación automática de reglas de cobertura para consultas SQL

Research Projects
Organizational Units
Journal Issue
Abstract
Una parte fundamental del desarrollo del software es la fase del testing, también conocida como fase de pruebas del software (en inglés Software Tes-ting). La fase de testing del software tiene como objetivo principal, detectar posibles errores en el funcionamiento de las aplicaciones así como elementos que no cumplan con las especificaciones requeridas. Durante el proceso de pruebas es necesario contar con un conjunto de casos de prueba, por lo que resulta necesario realizar un diseño previo de dichos casos de prueba para su posterior ejecución. En el campo de las bases de datos y en particular en el caso de las pruebas de consultas escritas en lenguaje SQL, es muy importante disponer de un conjunto de casos de prueba que sean de calidad, en el sentido de que sean de pequeño tamaño y que permitan detectar el mayor número de errores. Para medir la calidad del conjunto de casos de prueba se usan ciertos criterios de medida. En particular, para el caso de consultas escritas en lenguaje SQL, se usa el criterio de medida SQLfpc (Full Predicate Coverage). Este criterio esta definido mediante un conjunto de reglas que se derivan de la semántica de la consulta. En este proyecto hemos desarrollado un prototipo para la generación automática de las reglas que definen el criterio de medida SQLfpc para consultas SQL.
Testing represents an essential step of the software development process. The main objective of Software testing is finding potential execution errors as well as elements that do not meet the required specifications. The testing process is driven by a set of test cases. Therefore, a preliminary design of such test cases is required. High quality test cases are very important in the field of databases, specially for SQL language queries. These test cases must be small in size and capable of detecting a large number of errors. Their quality is assessed according to some established criteria. For instance, in the case of queries written in a SQL language, the SQLfpc (Full Predicate Coverage for SQL) criterion is generally employed. This criterion is defined by a set of rules derived from the semantics of the query. In this project, we have developed a prototype capable of automatically generating the set of rules that define the SQLfpc yardstick for SQL queries.
Description
Trabajo de Fin de Grado en Ingeniería del Software (Universidad Complutense, Facultad de Informática, curso 2012/2013)
Keywords
Citation