Not logged in.

Contribution Details

Type Master's Thesis
Scope Discipline-based scholarship
Title Model Based Test Automation
Organization Unit
Authors
  • Frank Sprich
Supervisors
  • Michael Würsch
  • Patrick Knab
  • Harald Gall
Institution University of Zurich
Faculty Faculty of Economics, Business Administration and Information Technology
Date 2007
Abstract Text Test automation is considered as essential in the field of modern software development. In the context of test driven development within the IBM Cloud project and the creation and integration of software increments to an application we have to automate regression testing. Common test automation techniques like test scripting, capture/replay, or keyword driven approaches have remaining problems. The main problem is the fragileness due to the relative low abstraction level of the resulting test scripts. Model based test automation solves this by using a model of the application under test (AUT). Test cases are derived from this model. At execution time an adaptor maps the model back to the AUT. This leads to an easy to adapt and to maintain test automation approach. The applied test automation tool for the IBM Cloud project is the Eclipse based Rational Functional Tester (RFT). Because the RFT is a hybrid test automation tool based on the test scripting and the capture/replay approach it has some of the mentioned problems. We improved the RFT functionality by creating a plug-in for model based testing. The model based testing plug-in is based on the core functionalities and data structures of the RFT. Such a data structure is the object map. This map is a XML file which maps AUT test objects to executable test scripts. The MBT plug-in uses the XML information to build an inheritance tree of the test objects. The aim is to build an AUT model by declaring test objects as states and their transitions to other states. With the aid of an example we prove the concept of the plug-in and point out the implemented abilities of model based test automation.
Zusammenfassung Testautomation wird im Umfeld der modernen Softwareentwicklung als essentiell betrachtet. Im Kontext von Test-Driven Software Development, innerhalb des IBM Cloud Projektes und der damit zusammenhängenden Integration von Software Inkrementen, sind Regressionstests zu automatisieren. Bei den bekannten Testautomationsverfahren, wie Test Scripting, Capture/Replay oder Keyword-Driven gibt es bestehende Probleme. Das Hauptproblem ist die Anfälligkeit der Scripte bedingt durch den relativ niedrigen Abstractionslevel. Modellbasierte Testautomation löst dieses Problem durch die Benutzung eines Modells der zu testenden Applikation (AUT). Testfälle werden von diesem Modell abgeleitet. Das Modell wird zur Laufzeit, unter Zuhilfenahme eines Adapters, auf die AUT abgebildet. Dieser Ansatz ermöglicht eine einfach anzussende und zu wartende Testautomation. IBM Cloud Projekt wird das Testautomationswerkzeug, der Rational Functional Tester (RFT) angewendet. Da der RFT ein hybrides Testautomationswerkzeug ist, welches auf dem Test Scripting und dem Capture/Replay Ansatz aufbaut, unterliegt er den hierdurch bestehenden Problemen. Der RFT wurde von uns durch das Erstellen eines modellbasierten Testautomations-Plug-ins verbessert. Hierbei setzt das Plug-in auf den internen RFT Funktionen und Datenstrukturen auf. Eine solche Struktur ist die sog. Object Map. Eine Object Map ist eine XML Datei, welche AUT Objekte auf ausführbare Testskripte abbildet. Um dies tun zu können verwendet das Plug-in Vererbungsinformationen, die in der Objekt Map gespeichert sind. Hieraus wird ein Stammbaum gebildet. Ziel ist es ein Modell der AUT zu erstellen, welches sowohl die Ausgangszustände (states) und die Übergänge (transitions), als auch die dazugehrigen Zielzustände (states) abbildet. Zuhilfenahme eines Beispiels beweisen wir die Tauglichkeit des angewendeten Konzepts. Ausserdem stellen wir die weiteren Fähigkeiten, die in das Plug-in implementiert sind, heraus.
Export BibTeX