Vorstellung einer SWTBot-Erweiterung für den Test von NatTable-Elementen in eigenen Rich-Client-Anwendungen

Automatisierte UI-Tests

Jan-Paul Buchwald
© iStockfoto.com/malerapaso

In Zeiten von Continuous Delivery ist ein hohes Maß an Testautomatisierung unabdingbar. Für oberflächenzentrierte Anwendungen auf Basis der Eclipse Rich Client Platform sollte hierbei auch Funktionalität der Benutzeroberfläche automatisiert getestet werden. Für diesen Zweck gibt es bereits ausgereifte Frameworks oder Toolsets, die jedoch meist auf die Standardoberflächenelemente beschränkt sind. Dieser Artikel zeigt am Beispiel des Frameworks SWTBot, wie mit verhältnismäßig wenig Code und etwas Hintergrundwissen eine Erweiterung umgesetzt wurde, mit der Nebula-NatTable-Instanzen im Rahmen eigener Rich-Client-Anwendungen komfortabel getestet werden können.

SWTBot ist ein Open Source Java-basiertes Tool für UI und funktionale Tests von SWT und Eclipse-basierten Anwendungen. Ziel ist eine möglichst einfache Entwicklung von automatisierten Tests durch Bereitstellung eines intuitiv bedienbaren API, das technische Details von SWT oder Eclipse weitgehend abstrahiert. SWTBot kann sowohl direkt aus der Eclipse Workbench, als auch über Ant oder Maven Tycho im Rahmen automatisierter Build- oder Deployment-Prozesse verwendet werden. Die Bibliothek bringt die Unterstützung der gängigen SWT Controls wie Formularelemente (Buttons, Combos, Checkboxen etc.), Menüs, Tables oder Tree-Elemente mit. Native Dialoge wie Dateiauswahl werden leider nicht unterstützt. Für die Anbindung eigener SWT Controls können verschiedene generische abstrakte Klassen erweitert werden. Dies wird in diesem Artikel am Beispiel eines NatTable-Tabellen-Controls gezeigt.

(…)

Geschrieben von
Jan-Paul Buchwald
Jan-Paul Buchwald
Jan-Paul Buchwald ist Senior Consultant im Java-Team der BeOne Stuttgart GmbH und verfügt über langjährige Erfahrung aus vielen Rollen und Lebenszyklusphasen der Softwareentwicklung mit Java, sowohl im Bereich Portal- und Webbasierte Lösungen als auch Rich-Client-Anwendungen.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.