[Back]


Diploma and Master Theses (authored and supervised):

K. Hammerl:
"Considerations and a Catalog of Requirements regarding a Multi Technology Test Automation Framework";
Supervisor: T. Grechenig, M. Bernhart; 183-1, 2016.



English abstract:
Software testing is an essential activity in any software engineering project. In line with the increasing expectations regarding the quality of the tested products, also the challenges for test experts rise due to accelerated development cycles, a rapid technological progress and because of the distributed nature of modern information technology (IT) systems. While manual testing continues to play a substantial role in the testing process, more and more attention is paid to automated software testing. This work reflects this development and examines basic concepts and important needs for an automation framework for functional software testing with respect to the increasing scale, heterogeneity and intricacy of modern IT systems. Some problems arise out of this complexity. What are the key demands with a focus on black box testing and automated test execution on the system level? What are the requirements and basic concepts for such a testing framework that enables even technically less experienced staff to benefit from high levels of test automation? What are the developer's needs regarding extensibility or flexibility of such a framework if we consider the ongoing evolution in today's IT systems? This master thesis provides answers to these questions. The requirements elicitation was a multistep approach. Initially, a research for appropriate literature was performed. Based on this analysis, qualitative interviews were conducted with experts who are experienced in the development of comparable frameworks. The elicitation was completed with a brief examination of existing solutions. Afterwards, the findings and the created catalog were subject to an evaluation procedure with two presentations and a review by further experts in the field. Essentially, the outcome of the work is divided into two main parts. The first part is an explanation of the basic concepts that have to be considered in the development of such a framework. This includes, for example, six fundamental design principles for a functional test automation framework and a suitable definition of the term framework. Exemplary test scenarios and design sketches for the framework are also outlined within this section. The second part, the actual core of the result, is a comprehensive catalog with more than five hundred requirements. These requirements are sorted into eight major categories: Abstraction of Test Objects, Test Specification, Element Interaction, Element Identification, Execution Control, Test Results, Utilities for Automation and Miscellaneous Requirements. All categories and their 29 subcategories are explained within this thesis. Thus, this work provides a unique academic compendium of appropriate concepts and concrete requirements for a corresponding test automation framework.

German abstract:
Testen ist eine essentielle Aktivitaet in jedem Softwareentwicklungsprojekt. Obwohl der manuelle Softwaretest nach wie vor eine substantielle Rolle in Testprozessen spielt, verschiebt sich der Fokus immer mehr in Richtung automatisierter Softwaretests. Diese Arbeit greift diesen Trend auf und untersucht grundlegende Konzepte und Anforderungen fuer ein Testautomatisierungsframework fuer den funktionalen Test in Hinblick auf die steigende Komplexitaet und Heterogenitaet moderner Informationssysteme. Im Rahmen der vorliegenden Arbeit wird erhoben, welche Anforderungen für die Automatisierung funktionaler Tests auf Systemebene bestehen. Weiters werden grundlegende Konzepte und spezielle Anforderungen für ein Testframework, das auch Personen ohne tiefgehende Programmierkenntnisse anwenden koennen, untersucht. Beim vorgestellten Anforderungskatalog wird angesichts der raschen Evolution von Informationssystemen ein Fokus auf Erweiterbarkeit und Flexibilitaet gelegt, damit Entwickler ein derartiges Framework langfristig einsetzen koennen. Die Anforderungserhebung erfolgte in einem mehrstufigen Ansatz. Ausgangspunkt war eine Literaturrecherche. Interviews mit Experten, die Erfahrungen im Bereich vergleichbarer Loesungen sammeln konnten, ergaben Anforderungen aus der Praxis. Eine Untersuchung von existierenden Loesungen rundete die Analyse ab. Abschliessend erfolgte eine Evaluierung der gewonnenen Erkenntnisse und des erstellten Anforderungskatalogs durch weitere Experten. Das Ergebnis der Arbeit teilt sich in zwei Hauptbereiche. Der erste Teil ist eine Erlaeuterung der grundlegenden Konzepte und Prinzipien, die bei der Entwicklung eines derartigen Frameworks zu beachten sind. Dies umfasst sechs fundamentale Entwurfsprinzipien fuer ein funktionales Testautomatisierungsframework, eine passende Definition des Begriffes Framework, Architekturskizzen sowie Beispiele fuer End-2-End Testszenarien. Der zweite Teil ist ein umfassender Anforderungskatalog mit mehr als fuenfhundert individuellen Anforderungen. Der Katalog ist in acht Hauptkategorien gegliedert: Abstraktion von Testobjekten, Testspezifikation, Interaktion mit Zielelementen, Identifikation von Zielelementen, Ausfuehrungskontrolle, Testergebnisse, Automatisierungswerkzeuge und Verschiedene Anforderungen. Alle Kategorien mit insgesamt 29 Subkategorien sind in dieser Arbeit detailliert erfasst. Das Ergebnis der vorliegenden Arbeit stellt ein einzigartiges Kompendium von Konzepten und konkreten Anforderungen für ein Multi-Technologie-Testautomatisierungsframework fuer den funktionalen Softwaretest dar.

Created from the Publication Database of the Vienna University of Technology.