Resumen:
Las bases de datos, sea cual sea la tecnología utilizada, son un elemento omnipresente en la práctica totalidad de las aplicaciones empresariales. Cuando se prueban estas aplicaciones surge un compromiso entre el tamaño de la base de datos de prueba y la representatividad de la misma, además del coste de diseñar estos datos para las pruebas. El concepto de cobertura ha sido históricamente un tema ampliamente investigado en el campo de las pruebas de software (criterios lógicos, mutantes, etc.) junto con sus aplicaciones (generación de pruebas, reducción, priorización, etc.). Desde el punto de vista práctico, la evaluación de la cobertura de código es ampliamente utilizada y soportada por muchas herramientas para determinar si las pruebas son suficientes. Pero, cuando la aplicación bajo prueba utiliza una base de datos, ¿estos criterios permiten determinar si las pruebas son suficientes para detectar defectos? ¿Podemos generar automáticamente datos de prueba que sean representativos?
En este seminario abordaremos esta problemática, algunas soluciones y líneas de investigación. Inicialmente se centrará en aplicaciones con bases de datos relacionales, para a continuación enfocar las características específicas cuando éstas son NoSQL o cuando solamente tenemos acceso a los datos a través de un API.