Promotion
Dissertationen
Tobias Griebe: Methode und Technologie zur modellbasierten Automatisierung von Tests kontextsensitiver mobiler Anwendungen
Smartphone und Tablet Computer haben sich zu universalen Kommunikations- und Unterhaltungsplattformen entwickelt, die durch ständige Verfügbarkeit mobilen Internets die Verwendung mobiler, digitaler Dienste und Anwendungen immer mehr zur Normalität werden lassen und in alle Bereiche des Alltags vordringen. Die digitalen Marktplätze zum Vertrieb von Apps, sogenannten App Stores, sind Blockbuster-Märkte, in denen wenige erfolgreiche Produkte in kurzen Zeitintervallen den Großteil des Gesamtgewinns des Marktes erzielen. Durch dynamische, summative Bewertungssysteme in App Stores wird die Qualität einer App zu einem unmittelbaren Wert- und Aufwandstreiber. Die Qualität einer App steht in direktem Zusammenhang mit der Anzahl Downloads und somit mit dem wirtschaftlichen Erfolg. Mobile Geräte zeichnen sich gegenüber Desktop-Computern vorrangig dadurch aus, dass sie durch Sensoren in der Lage sind, Parameter ihrer Umgebung zu messen und diese Daten für Anwendungsinhalte aufzubereiten. Anwendungsfälle für solche Technologien sind beispielsweise ortsbasierte digitale Dienste, die Verwendung von Standortinformationen für Fahrzeug- oder Fußgängernavigation oder die Verwendung von Sensoren zur Interaktion mit einer Anwendung oder zur grafischen Aufbereitung in Augmented Reality-Anwendungen. Anwendungen, die Parameter ihrer Umgebung messen, aufbereiten und die Steuerung des Kontrollflusses einfließen lassen, werden als kontextsensitive Anwendungen bezeichnet. Kontextsensitivität hat prägenden Einfluss auf die fachliche und technische Gestaltung mobiler Anwendungen. Die fachliche Interpretation von Kontextparametern ist ein nicht-triviales Problem und erfordert eine sorgfältige Implementierung und gründliches Testen. Herausforderungen des Testens kontextsensitiver, mobiler Anwendungen sind Erstellung und Durchführung von Tests, die zum einen die zu testende Anwendung adäquat abdecken und zum anderen Testdaten bereitstellen und reproduzierbar in die zu testende Anwendung einspeisen. In dieser Dissertation wird eine Methode und eine Technologie vorgestellt, die wesentliche Aspekte und Tätigkeiten des Testens durch modellbasierte Automatisierung von menschlicher Arbeitskraft entkoppelt. Es wird eine Methode vorgestellt, die Tests für kontextsensitive Anwendungen aus UML-Aktivitätsdiagrammen generiert, die durch Verwendung eines UML-Profils zur Kontext- und Testmodellierung um Testdaten angereichert werden. Ein Automatisierungswerkzeug unterstützt die Testdurchführung durch reproduzierbare Simulation von Kontextparametern. Durch eine prototypische Implementierung der Generierung von funktionalen Akzeptanztests, der Testautomatisierung und Kontextsimulation wurde Machbarkeit des vorgestellten Ansatzes am Beispiel der mobilen Plattform Android praktisch nachgewiesen.