Automated Metamorphic Testing on the Analysis of Software Variability: Technical Report ISA-2013-TR-03
Variability determines the ability 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 operat...
| Autores: | , , , , , |
|---|---|
| Tipo de recurso: | informe técnico |
| Estado: | Versión publicada |
| Fecha de publicación: | 2013 |
| 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/128775 |
| Acceso en línea: | https://hdl.handle.net/11441/128775 |
| Access Level: | acceso abierto |
| Palabra clave: | Software testing Metamorphic testing Automated testing Software variability |
| Sumario: | Variability determines the ability 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 technical report, 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, we 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 seven out of the 15 tools under test. |
|---|