Automated metamorphic testing of variability analysis tools

Variability determines the capability of software applications to be configured and customized. A common need during the development of variability–intensive systems is the automated analysis of their underlying variability models, e.g. detecting contradictory configuration options. The analysis ope...

Descripción completa

Detalles Bibliográficos
Autores: Segura Rueda, Sergio, Durán Toro, Amador, Sánchez Jerez, Ana Belén, Le Berre, Daniel, Lonca, Emmanuel, Ruiz Cortés, Antonio
Tipo de recurso: artículo
Estado:Versión enviada para evaluación y publicación
Fecha de publicación:2015
País:España
Institución:Universidad de Sevilla (US)
Repositorio:idUS. Depósito de Investigación de la Universidad de Sevilla
OAI Identifier:oai:idus.us.es:11441/60609
Acceso en línea:http://hdl.handle.net/11441/60609
https://doi.org/10.1002/stvr.1566
Access Level:acceso abierto
Palabra clave:Metamorphic testing
automated testing
software testing
software variability
id ES_54e2eab87ffd0fb61ff91d2f8678262b
oai_identifier_str oai:idus.us.es:11441/60609
network_acronym_str ES
network_name_str España
repository_id_str
spelling Automated metamorphic testing of variability analysis toolsSegura Rueda, SergioDurán Toro, AmadorSánchez Jerez, Ana BelénLe Berre, DanielLonca, EmmanuelRuiz Cortés, AntonioMetamorphic testingautomated testingsoftware testingsoftware variabilityVariability determines the capability of software applications to be configured and customized. A common need during the development of variability–intensive systems is the automated analysis of their underlying variability models, e.g. detecting contradictory configuration options. The analysis operations that are performed on variability models are often very complex, which hinders the testing of the corresponding analysis tools and makes difficult, often infeasible, to determine the correctness of their outputs, i.e. the well–known oracle problem in software testing. In this article, we present a generic approach for the automated detection of faults in variability analysis tools overcoming the oracle problem. Our work enables the generation of random variability models together with the exact set of valid configurations represented by these models. These test data are generated from scratch using step–wise transformations and assuring that certain constraints (a.k.a. metamorphic relations) hold at each step. To show the feasibility and generalizability of our approach, it has been used to automatically test several analysis tools in three variability domains: feature models, CUDF documents and Boolean formulas. Among other results, we detected 19 real bugs in 7 out of the 15 tools under test.CICYT TIN2012-32273CICYT IPT-2012- 0890-390000Junta de Andalucía TIC-5906Junta de Andalucía P12-TIC- 1867WileyLenguajes y Sistemas InformáticosTIC205: Ingeniería del Software Aplicada2015info:eu-repo/semantics/articleinfo:eu-repo/semantics/submittedVersionapplication/pdfapplication/pdfhttp://hdl.handle.net/11441/60609https://doi.org/10.1002/stvr.1566reponame:idUS. Depósito de Investigación de la Universidad de Sevillainstname:Universidad de Sevilla (US)InglésSoftware Testing, Verification and Reliability, 25 (2), 138-163.TIN2012-32273IPT-2012- 0890-390000TIC-5906P12-TIC- 1867http://onlinelibrary.wiley.com/doi/10.1002/stvr.1566/abstractinfo:eu-repo/semantics/openAccessoai:idus.us.es:11441/606092026-06-17T12:51:07Z
dc.title.none.fl_str_mv Automated metamorphic testing of variability analysis tools
title Automated metamorphic testing of variability analysis tools
spellingShingle Automated metamorphic testing of variability analysis tools
Segura Rueda, Sergio
Metamorphic testing
automated testing
software testing
software variability
title_short Automated metamorphic testing of variability analysis tools
title_full Automated metamorphic testing of variability analysis tools
title_fullStr Automated metamorphic testing of variability analysis tools
title_full_unstemmed Automated metamorphic testing of variability analysis tools
title_sort Automated metamorphic testing of variability analysis tools
dc.creator.none.fl_str_mv Segura Rueda, Sergio
Durán Toro, Amador
Sánchez Jerez, Ana Belén
Le Berre, Daniel
Lonca, Emmanuel
Ruiz Cortés, Antonio
author Segura Rueda, Sergio
author_facet Segura Rueda, Sergio
Durán Toro, Amador
Sánchez Jerez, Ana Belén
Le Berre, Daniel
Lonca, Emmanuel
Ruiz Cortés, Antonio
author_role author
author2 Durán Toro, Amador
Sánchez Jerez, Ana Belén
Le Berre, Daniel
Lonca, Emmanuel
Ruiz Cortés, Antonio
author2_role author
author
author
author
author
dc.contributor.none.fl_str_mv Lenguajes y Sistemas Informáticos
TIC205: Ingeniería del Software Aplicada
dc.subject.none.fl_str_mv Metamorphic testing
automated testing
software testing
software variability
topic Metamorphic testing
automated testing
software testing
software variability
description Variability determines the capability of software applications to be configured and customized. A common need during the development of variability–intensive systems is the automated analysis of their underlying variability models, e.g. detecting contradictory configuration options. The analysis operations that are performed on variability models are often very complex, which hinders the testing of the corresponding analysis tools and makes difficult, often infeasible, to determine the correctness of their outputs, i.e. the well–known oracle problem in software testing. In this article, we present a generic approach for the automated detection of faults in variability analysis tools overcoming the oracle problem. Our work enables the generation of random variability models together with the exact set of valid configurations represented by these models. These test data are generated from scratch using step–wise transformations and assuring that certain constraints (a.k.a. metamorphic relations) hold at each step. To show the feasibility and generalizability of our approach, it has been used to automatically test several analysis tools in three variability domains: feature models, CUDF documents and Boolean formulas. Among other results, we detected 19 real bugs in 7 out of the 15 tools under test.
publishDate 2015
dc.date.none.fl_str_mv 2015
dc.type.none.fl_str_mv info:eu-repo/semantics/article
info:eu-repo/semantics/submittedVersion
format article
status_str submittedVersion
dc.identifier.none.fl_str_mv http://hdl.handle.net/11441/60609
https://doi.org/10.1002/stvr.1566
url http://hdl.handle.net/11441/60609
https://doi.org/10.1002/stvr.1566
dc.language.none.fl_str_mv Inglés
language_invalid_str_mv Inglés
dc.relation.none.fl_str_mv Software Testing, Verification and Reliability, 25 (2), 138-163.
TIN2012-32273
IPT-2012- 0890-390000
TIC-5906
P12-TIC- 1867
http://onlinelibrary.wiley.com/doi/10.1002/stvr.1566/abstract
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
application/pdf
dc.publisher.none.fl_str_mv Wiley
publisher.none.fl_str_mv Wiley
dc.source.none.fl_str_mv reponame:idUS. Depósito de Investigación de la Universidad de Sevilla
instname:Universidad de Sevilla (US)
instname_str Universidad de Sevilla (US)
reponame_str idUS. Depósito de Investigación de la Universidad de Sevilla
collection idUS. Depósito de Investigación de la Universidad de Sevilla
repository.name.fl_str_mv
repository.mail.fl_str_mv
_version_ 1869408223736365056
score 15,300724