© Excellent backgrounds/Shutterstock.com
Webanwendungen mit AJAX einfach und übersichtlich testen

Arquillian Graphene 2.0 im Einsatz


Automatisierte Frontend-Tests von Webanwendungen sind mit geeigneten Frameworks wie Selenium schon seit einiger Zeit etabliert. Eine Schwierigkeit dabei ist der Umgang mit den immer weiter verbreiteten JavaScript-Funktionalitäten und dem dynamischen Verhalten in modernen Webanwendungen. Sind diese mit Selenium alleine noch eine Herausforderung, bietet sich Arquillian Graphene als Ergänzung an. Dieses Framework hilft nicht nur, AJAX-Schwierigkeiten in den Griff zu bekommen, sondern ermöglicht auch ein sauberes Testdesign.

Selenium [1], ein Werkzeug, das häufig verwendet wird, um Weboberflächen zu testen, kann man durchaus als Open-Source-Platzhirsch der Browserautomatisierung bezeichnen. Diese Beliebtheit war mit Sicherheit ein Anlass für JBoss, das hauseigene Java-EE-Testframework Arquillian [2] um Arquillian Drone [3] zu ergänzen, eine Erweiterung, die Selenium integriert und für die Tests verfügbar macht. Die Verwendung beider Frameworks in Kombination wurde bereits in einer früheren Ausgabe des Java Magazins [4] veranschaulicht. Arquillian ist explizit auf Erweiterbarkeit ausgelegt und bietet Entwicklern entsprechende Schnittstellen an. Zu den zahlreichen Erweiterungen, die bereits entstanden sind, zählt auch Arquillian Graphene [5].

Graphene (die aktuell finale Version ist 2.0.3) zielt darauf ab, die Verwendung von Selenium mittels eines „sexy AJAX-ready API“ [3] zu verbessern, um eine hervorragende Anwenderfreundlichkeit zu erreichen. Dabei wird das Rad nicht neu erfunden: Das Selenium- und insbesondere das WebDriver-API [6], das sich derzeit im W3C-Standardisierungsprozess befindet [7], werden nicht verborgen, sondern bleiben direkt nutzbar. Sie werden durch Graphene um weitere Möglichkeiten ergänzt und dadurch deutlich einfacher in der Anwendung. Welche Erweiterungen Graphene im Einzelnen anbietet und wie diese eingesetzt werden können, zeigen wir in diesem Artikel.

Der erste Graphene-Test

Arquillian mit seinen Erweiterungen ist modular aufgebaut und lässt sich am einfachsten mittels Maven oder eines entsprechenden Dependency-Management-Systems einbinden. Graphene benötigt mindestens noch Arquillian Drone und Arquillian Core sowie Selenium und JUnit (oder TestNG). Die Einbindung mittels Maven ist im Arquillian Graphene Guide [8] vorbildlich erläutert. Auf der Modulübersicht von Graphene [5] ist angegeben, mit welchen Versionen der anderen Module Graphene kompiliert wurde. Andere Kombinationen sind auch möglich, von der Funktionalität muss man sich...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang