Tesis doctoral
Mutación de expresiones de navegación para Testing y Reparación
Fecha de publicación:
29/03/2019
Idioma:
Español
Clasificación temática:
Resumen
Verificar que un sistema de software realiza correctamente las tareas para las cuales fue desarrollado es una de las actividades de mayor importancia en Ingeniería de Software, y concentra un significativo esfuerzo de investigación en esta área. El testing, el cual consiste en ejecutar un programa a evaluar en un conjunto de escenarios particulares y contrastar el comportamiento esperado del programa con el efectivamente obtenido, es una de las técnicas más utilizadas como forma de comprobación del correcto comportamiento del software. Dada la inherente incompletitud de testing, resulta necesario realizar una selección adecuada de los escenarios bajos los cuales realizar la evaluación. Claramente, como esta evaluación es realizada va a afectar la confianza que genere el proceso de testing, cuando la ejecución real del software coincida con la esperada, y las chances de detectar defectos en el software durante este proceso. Concretamente, se espera que el conjunto de escenarios seleccionado para el proceso de testing sea un buen representante de todos los posibles escenarios de ejecución del software en cuestión. Los criterios de testing permiten medir la calidad de un conjunto de tests generando objetivos a ser cubiertos, y evaluando cuántos de estos son satisfechos (cubiertos) por los tests. Mutation testing es uno de estos criterios, y consiste en inyectar fallas artificiales en el software bajo evaluación, y evaluar la capacidad de detección, por parte de los tests, de estas fallas. Las fallas generadas por mutation testing se basan en operadores de mutación.Estos operadores deben ser buenos representantes de fallas reales, y tradicionalmente involucran cambios simples, tales como el reemplazo de operadores aritméticos y relacionales. Algunos estudios recientes muestran sin embargo que algunas clases de fallas no se ven representadas por los operadores de mutación tradicionales, motivando así la introducción de nuevos operadores.En esta tesis presentaremos un nuevo operador de mutación, que aplica a expresiones de navegación, un tipo de expresiones ampliamente utilizadas en programas orientados a objetos, y que no se ven afectadas por los operadores de mutación clásicos. Daremos una definición precisa del operador, y evaluaremos su aplicación tanto en el contexto de testing (mutation testing), como en el contexto de reparación de programas.
Archivos asociados
Licencia
Identificadores
Colecciones
Tesis(CCT - CORDOBA)
Tesis de CTRO.CIENTIFICO TECNOL.CONICET - CORDOBA
Tesis de CTRO.CIENTIFICO TECNOL.CONICET - CORDOBA
Citación
Gutiérrez Brida, Simón Emmanuel; Aguirre, Nazareno Matias; Mutación de expresiones de navegación para Testing y Reparación; 29-3-2019
Compartir