Aviso: para depositar documentos, por favor, inicia sesión e identifícate con tu cuenta de correo institucional de la UCM con el botón MI CUENTA UCM. No emplees la opción AUTENTICACIÓN CON CONTRASEÑA
 

Algoritmo genético multiobjetivo para selección de casos de tests

Loading...
Thumbnail Image

Official URL

Full text at PDC

Publication date

2021

Advisors (or tutors)

Editors

Journal Title

Journal ISSN

Volume Title

Publisher

Citations
Google Scholar

Citation

Abstract

El testing de software es una de las principales técnicas utilizadas para validar la corrección de un sistema, y consiste en definir una serie de pruebas o tests para determinar si el sistema bajo prueba cumple la especificación. Sin embargo, no es posible definir to das las pruebas posibles para realizar esta comprobación, por lo que surge la necesidad de hacer una selección de casos de test. En este trabajo proponemos un marco de selección de casos de test, con el apoyo de la técnica de mutation testing. Para realizar la selección del subconjunto de casos de test se ha diseñado un algoritmo genético multiobjetivo que trata de optimizar la solución en base a dos factores: maximizar el mutation score, que en nuestro caso permite distinguir entre mutantes además de la especificación, y minimizar el número total de entradas necesarias para el subconjunto de tests. Combinando estas técnicas hemos conseguido obtener un conjunto de soluciones que mejoran a las obtenidas por medio de los algoritmos genéticos y el mutation score tradicionales, y además hemos logrado determinar que la aplicación de la heurística de cruce en un punto en el algoritmo genético reporta soluciones sensiblemente mejores.
Software testing is one of the main techniques used to validate the correctness of a system, and consists of defining a series of tests to determine whether the system under test meets the specification. However, it is not viable to define all the possible tests to perform this verification, so the need to make a selection of test cases arises. In this thesis we propose a test case selection framework, applying the mutation testing technique. To perform the test case subset selection we rely on a multi-objective genetic algorithm that seeks to optimize the solution based on two factors: maximizing the mutation score, which in our case allows to distinguish between mutants as well as the specification, and minimizing the total number of inputs required for the subset of tests. By combining these techniques we have managed to obtain a set of solutions that improve those obtained by means of the traditional techniques on genetic algorithms and the mutation score, and we have also managed to determine that the application of the one-point crossover heuristic in the genetic algorithm yields significantly better solutions.

Research Projects

Organizational Units

Journal Issue

Description

Trabajo de Fin de Máster en Ingeniería Informática, Facultad de Informática UCM, Departamento de Sistemas Informáticos y Computación, Curso 2020/2021. El código fuente se puede consultar en el siguiente repositorio en GitHub: https: //github.com/ctesti/TFM

Unesco subjects

Keywords