© Excellent backgrounds/Shutterstock.com
Fortgeschrittene Testautomatisierung mit JBehave und Selenium

Agile Testautomatisierung


Im ersten Teil der Artikelserie wurden JBehave und Behavior-driven Development einige „Beauty-Geheimnisse“ entlockt. Mit einer selbstdefinierbaren domänenspezifischen Sprache lassen sich Tests formulieren, die sowohl für Mensch als auch Computer verständlich sind. JBehave 4 ist nicht nur ein nützliches, sondern auch ein sehr integrationsfähiges Testframework. Das möchte ich anhand der Verbindung mit Selenium WebDriver aufzeigen. Außerdem gebe ich Tipps im zweiten Teil und präsentiere weitere fortschritt­liche und interessante Merkmale von JBehave.

Artikelserie

Teil 1: Einführung in Behavior-driven Development mit JBehave

Teil 2: Fortgeschrittene Testautomatisierung mit JBehave und Selenium

Bei der Testautomatisierung stellt sich immer die wichtige Frage nach dem Verhältnis von Aufwand und Nutzen im Vergleich zu manuellen Tests. Es lohnt sich höchst selten oder ist gar nicht möglich, alle spezifizierten Testfälle zu automatisieren. Gefragt ist vielmehr der Mut zur Lücke. Einige der sinnvollsten Kriterien für die Auswahl von zu automatisierenden Tests sind: Priorität der getesteten Features, Fehlerrisiko, erforderliche Häufigkeit der Testdurchführung sowie technische Eignung und ausreichende Stabilität der Applikation. Auch organisatorische Faktoren haben einen starken Einfluss auf die Rentabilität. Entgegen der Versprechen von Toolherstellern und der Vorstellung einiger Manager ist die Testautomatisierung kein Kindergeburtstag. Grundsätzlich sollten nur Mitarbeiter eingesetzt werden, die auf diesem Gebiet wirklich qualifiziert sind. Wenn man die Wahrscheinlichkeit, dass sich die Investitionen lohnen, weiter erhöhen möchte, überlässt man ihnen die Leitung bei der Auswahl von Methoden und Tools.

Bei klassischen Webanwendungen, die in Browsern auf dem PC laufen, wurde nach meiner Einschätzung vielerorts die Erfahrung gemacht, dass die Automatisierung von funktionalen Testfällen erfolgreich und wirtschaftlich ist. Falls man solche Applikationen über die GUI- und nicht über die Serviceschicht automatisieren möchte, dann ist vor allem Selenium WebDriver bzw. Selenium 2.0 sehr gut geeignet (nachfolgend verkürzt als Selenium bezeichnet).

Verschiedene Browser, Betriebssysteme und Versionen stellen zwar eine Herausforderung dar, die allerdings bewältigt werden kann. Da dieser Anwendungsfall trotz mobiler Geräte immer noch häufig ist, möchte ich verraten, wie aus JBehave und Selenium ein dynamisches Duo wird. Trotz ihrer Verschiedenheit haben die beiden Tools eini...

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