Parallel mutation testing for large scale systems

Mutation testing is a valuable technique for measuring the quality of test suites in terms of detecting faults. However, one of its main drawbacks is its high computational cost. For this purpose, several approaches have been recently proposed to speed-up the mutation testing process by exploiting c...

ver descrição completa

Detalhes bibliográficos
Autores: Cerro Cañizares, Pablo, Núñez, Alberto, Filgueira, Rosa, Lara Jaramillo, Juan de
Formato: artículo
Fecha de publicación:2023
País:España
Recursos:Universidad Autónoma de Madrid
Repositorio:Biblos-e Archivo. Repositorio Institucional de la UAM
Idioma:inglés
OAI Identifier:oai:repositorio.uam.es:10486/707755
Acesso em linha:http://hdl.handle.net/10486/707755
https://dx.doi.org/10.1007/s10586-023-04074-y
Access Level:acceso abierto
Palavra-chave:Distributed systems
High performance computing
Large scale systems
Mutation testing
Parallel mutation testing
Testing
Informática
Descrição
Resumo:Mutation testing is a valuable technique for measuring the quality of test suites in terms of detecting faults. However, one of its main drawbacks is its high computational cost. For this purpose, several approaches have been recently proposed to speed-up the mutation testing process by exploiting computational resources in distributed systems. However, bottlenecks have been detected when those techniques are applied in large-scale systems. This work improves the performance of mutation testing using large-scale systems by proposing a new load distribution algorithm, and parallelising different steps of the process. To demonstrate the benefits of our approach, we report on a thorough empirical evaluation, which analyses and compares our proposal with existing solutions executed in large-scale systems. The results show that our proposal outperforms the state-of-the-art distribution algorithms up to 35% in three different scenarios, reaching a reduction of the execution time of—at best—up to 99.66%