Directly to content
  1. Publishing |
  2. Search |
  3. Browse |
  4. Recent items rss |
  5. Open Access |
  6. Jur. Issues |
  7. DeutschClear Cookie - decide language by browser settings

Integrationstest : Testprozess, Testfokus und Integrationsreihenfolge

Borner, Lars

English Title: Integration Testing : Testing Process, Test Focus and Integration Testing Order

[thumbnail of Promotionsarbeit_Lars_Borner_Integrationstest.pdf]
Preview
PDF, German
Download (1MB) | Terms of use

Citation of documents: Please do not cite the URL that is displayed in your browser location input, instead use the DOI, URN or the persistent URL below, as we can guarantee their long-time accessibility.

Abstract

Im Integrationstest werden die Abhängigkeiten zwischen den Bausteinen eines Softwaresystems getestet. Die große Anzahl Abhängigkeiten heutiger Systeme stellt für die beteiligten Rollen des Integrationstests eine große Herausforderung dar. Die vorliegende Promotionsarbeit stellt neue und innovative Ansätze vor, um diese Rollen zu unterstützen. Im ersten Teil der Arbeit wird ein Testprozess definiert, der die spezifischen Eigenheiten des Integrationstests berücksichtigt. Der definierte Integrationstestprozess setzt dabei seinen Schwerpunkt auf die im Prozess zu treffenden Entscheidungen. Er beschreibt, welche Entscheidungen in welcher Reihenfolge von welcher Rolle getroffen werden und welchen Einfluss diese Entscheidungen auf weitere Entscheidungen besitzen. Im weiteren Verlauf der Arbeit werden neue Ansätze vorgestellt, die das Treffen von zwei Entscheidungen im Integrationstestprozess unterstützen: die Testfokusauswahl und die Integrationsreihenfolge. Das Testen aller Abhängigkeiten ist aufgrund der Ressourcenbeschränkungen in realen Softwareprodukten nicht möglich. Die wenigen verfügbaren Ressourcen müssen daher für das Testen der fehleranfälligen Abhängigkeiten eingesetzt werden. Für das Identifizieren der fehleranfälligen Abhängigkeiten, und somit für die Testfokusauswahl, stellt die Promotionsarbeit einen neuen Ansatz vor. Der Ansatz verwendet Informationen über die Fehleranzahl von Bausteinen und die Eigenschaften von Abhängigkeiten aus früheren Versionen der zu integrierenden Software, um statistisch signifikante Zusammenhänge zwischen den Eigenschaften und der Fehleranzahl aufzudecken. Diese Zusammenhänge werden in der aktuellen Version ausgenutzt, um den Testfokus, d.h. die zu testenden Abhängigkeiten, auszuwählen. Im Integrationstest werden Bausteine schrittweise zu einem Gesamtsystem zusammengesetzt, um die Lokalisation der Fehlerursache beim Auftreten eines Fehlers zu erleichtern. Der Nachteil dieses schrittweisen Vorgehens ist, dass Bausteine, die noch nicht integriert, aber für das Ausführen der Tests notwendig sind, simuliert werden müssen. Das Ziel ist es daher, eine Integrationsreihenfolge zu ermitteln, die einen minimalen Simulationsaufwand bedeutet. Zusätzlich sollten Abhängigkeiten, die als Testfokus ausgewählt wurden, frühzeitig integriert werden, um eventuelle Fehler frühzeitig aufzudecken. In dieser Promotionsarbeit wurde der erste Ansatz entwickelt, eine Integrationsreihenfolge zu ermitteln, die sowohl den Testfokus als auch den Simulationsaufwand berücksichtigt. Die in der Arbeit entwickelten Ansätze wurden in Fallstudien mit mehreren realistisch großen Softwaresystemen evaluiert.

Translation of abstract (English)

The goal of integration testing is to test the dependencies between the components of a software system. The huge number of dependencies of today’s systems challenges the roles participating in the integration testing process. This PhD thesis describes new and innovative approaches to support these roles. The first part of the thesis defines a testing process that takes the specific characteristics of integration testing into account. This defined integration testing process focuses on the decisions to be made during the process. It describes the decisions that have to be made by individual roles. For every decision the dependent and depending decisions are worked out. The second part of the thesis introduces new approaches to support two important decisions of the process: the test focus selection and the determination of the integration testing order. Due to resource limitations of real software development projects, the testing of all dependencies is not possible. The few available resources have to be spent on error prone dependencies. This PhD thesis introduces a newly developed approach to identify these error prone dependencies and with that the test focus for the integration testing process. This new approach uses previous versions of a software system to uncover statistically significant correlations between the properties of a dependency and the number of errors of the participating components. These correlations are used to select the dependencies of the current version that have to be tested. In integration testing the components of the systems are stepwise integrated to test the dependencies between them. This stepwise approach eases the detection of the error cause, in case an error is uncovered. The disadvantage of this approach is the simulation effort of components which have not yet been integrated, but are being used by components in the current integration step. Therefore, the goal is to find an integration testing order that causes a minimal simulation effort. Additionally, the order has to take into account the test focus, i.e. the dependencies that were selected as test focus have to be integrated as early as possible. This PhD thesis introduces a newly developed approach that determines an integration testing order which considers the test focus as well as the simulation effort. This approach uses heuristic algorithms like the Simulated Annealing or Genetic Algorithm. All newly developed approaches were evaluated in several case studies. They were applied to real, large-sized software systems.

Document type: Dissertation
Supervisor: Paech, Prof. Dr. Barbara
Date of thesis defense: 3 March 2010
Date Deposited: 28 Apr 2010 10:40
Date: 2009
Faculties / Institutes: The Faculty of Mathematics and Computer Science > Department of Computer Science
DDC-classification: 004 Data processing Computer science
Controlled Keywords: Integrationstest
Uncontrolled Keywords: Testprozess , Integrationsreihenfolge , Fehlervorhersage , TestfokusauswahlTesting Process , Integration Testing Order , Defect Prediction , Test Focus Selection
About | FAQ | Contact | Imprint |
OA-LogoDINI certificate 2013Logo der Open-Archives-Initiative