Automatische Optimierung und Evaluierung modellbasierter Testfälle für den Komponenten- und Integrationstest

Automatic Optimization and Evaluation of Model-based Test Cases for Component and Integration Testing

  • In Rahmen dieser Arbeit wird ein werkzeuggestütztes Verfahren vorgestellt, das zum einen die automatische Testfallgenerierung anhand von UML-Modellen ermöglicht und zum anderen die generierten Testfallmengen hinsichtlich ihres Fehlererkennungspotentials zu bewerten erlaubt. Das Testfallgenerierungsverfahren unterstützt den modellbasierten Komponenten- und Integrationstest. Zu den betrachteten Überdeckungskriterien zählen sowohl etablierte Überdeckungskriterien für den Komponententest als auch eine Reihe so genannter zustandsbasierter Integrationstestkriterien. Durch Benutzung genetischer Algorithmen ermöglicht das entwickelte Werkzeug optimierte Testfallmengen automatisch zu generieren, die In Rahmen dieser Arbeit wird ein werkzeuggestütztes Verfahren vorgestellt, das zum einen die automatische Testfallgenerierung anhand von UML-Modellen ermöglicht und zum anderen die generierten Testfallmengen hinsichtlich ihres Fehlererkennungspotentials zu bewerten erlaubt. Das Testfallgenerierungsverfahren unterstützt den modellbasierten Komponenten- und Integrationstest. Zu den betrachteten Überdeckungskriterien zählen sowohl etablierte Überdeckungskriterien für den Komponententest als auch eine Reihe so genannter zustandsbasierter Integrationstestkriterien. Durch Benutzung genetischer Algorithmen ermöglicht das entwickelte Werkzeug optimierte Testfallmengen automatisch zu generieren, die nicht nur eine hohe Überdeckung bezüglich der betrachteten Kriterien erreichen, sondern auch eine möglichst geringe Anzahl an Testfällen enthalten. Des Weiteren unterstützt das Werkzeug die Visualisierung der von generierten Testfällen erzielten Überdeckung auf dem Modell und den modellbasierten Regressionstest. Zur Bewertung des Fehlererkennungspotentials werden sowohl Testfallmengen für den Komponententest als auch Testfallmengen für den Integrationstest betrachtet. Einerseits wird evaluiert, inwiefern solche Testfallmengen die Entdeckung von Modellfehlern erlauben. Dies wird durch ein Mutationstestverfahren auf Modellebene umgesetzt, das in einem ersten Schritt mehrere Mutanten des Modells automatisch erzeugt. Daraufhin wird durch Ausführung der Testfallmenge auf den Mutanten und auf dem initialen Modell der Anteil an erkannten Mutanten ermittelt. Andererseits werden modellbasierte Testfälle mit manuell erstellten Testfällen verglichen und das Potential zur Erkennung von Implementierungsfehlern evaluiert.show moreshow less
  • This thesis presents a tool-supported approach which enables the automatic test case generation from UML models and allows evaluating the fault detection potential of the generated test cases. The test case generation method supports both the model-based component and the integration testing phase. The considered coverage criteria include established coverage criteria for component testing as well as a series of so-called state-based integration testing criteria. By using genetic algorithms the developed tool automatically generates optimized test cases, maximizing the coverage achieved with regard to considered coverage criteria and minimizing the number of test cases. In addition, coverageThis thesis presents a tool-supported approach which enables the automatic test case generation from UML models and allows evaluating the fault detection potential of the generated test cases. The test case generation method supports both the model-based component and the integration testing phase. The considered coverage criteria include established coverage criteria for component testing as well as a series of so-called state-based integration testing criteria. By using genetic algorithms the developed tool automatically generates optimized test cases, maximizing the coverage achieved with regard to considered coverage criteria and minimizing the number of test cases. In addition, coverage visualization and model-based regression testing are also supported. For the purpose of evaluating the fault detection capability both component and integration test cases are considered. On the one hand, mutation testing is used for evaluating to which extent such test cases allow the detection of modeling faults. To do so, as a first step several mutants of the model are automatically generated; successively the proportion of mutants detected is determined by executing the test cases on the mutants and on the initial model. On the other hand, the generated test cases were compared to manually created test cases in order to evaluate their potential for detecting implementation faults.show moreshow less

Download full text files

Export metadata

  • Export Bibtex
  • Export RIS

Additional Services

Share in Twitter Search Google Scholar
Metadaten
Author:Florin-Avram Pinte
URN:urn:nbn:de:bvb:29-opus-33295
Advisor:Francesca Saglietti
Document Type:Doctoral Thesis
Language:German
Date of Publication (online):2012/06/19
Publishing Institution:Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU)
Granting Institution:Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU), Technische Fakultät
Date of final exam:2012/04/27
Release Date:2012/06/19
Tag:Fehlererkennungspotential; genetische Algorithmen; modellbasiert
component test; fault detection capability; genetic algorithms; integration test; model-based
SWD-Keyword:Integrationstest; Komponententest
Institutes:Technische Fakultät -ohne weitere Spezifikation-
Dewey Decimal Classification:620 Ingenieurwissenschaften und zugeordnete Tätigkeiten

$Rev: 12793 $