Wissenstransfer par Excellence
Nürnberg, 30. August – 1. September 2016

Herbstcampus 2016 » Programm »

Abstraction, Abstraction, Abstraction

Mit dem Page Object Pattern und Geb zu Test Driven Development für Web-UIs

Jeder Entwickler weiß, dass er seinen Code testen sollte. Nur das UI gilt gemeinhin, als schwierig zu testen, und die Tests haben den Ruf, fragil zu sein und bei kleinen Änderungen im produktiven Code reihenweise umzufallen. Das 'Browser Automation' Toolkit Geb verspricht mit einer Groovy-basierenden DSL, jQuery-ähnlicher Syntax und einer pragmatischen Abstraktion über dem Selenium WebDriver Abhilfe. Zusammen mit Spock erlaubt Geb es, gut leserliche Tests zu schreiben. Dank dem von Geb tief in seiner Architektur eingebunden Page Object Pattern sind diese Tests außerdem äußerst robust gegenüber Änderungen in der UI.

Vorkenntnisse
Dieser Vortrag richtet sich an Entwickler von Webapplikationen. Grundlegende Java-Kenntnisse sind hilfreich. Die Beispiele im Vortrag sind mit Groovy geschrieben. Es sind jedoch keine fundierten Kenntnisse von Groovy erforderlich, um diese zu verstehen.

Lernziele
Die Teilnehmer lernen das Page Object Pattern kennen. Dabei wird aufgezeigt, wie diese Abstraktion hilft, die Darstellung von der Logik im UI zu separieren. Die Logik kann dadurch einfach getestet werden. Um die Theorie in die Praxis zu überführen, wird eine Einführung in das Geb Toolkit gegeben. Die Teilnehmer lernen dabei, welche Hilfestellungen Geb beim Automatisieren des Browsers anbietet. Als Letztes wird gezeigt, wie mit Geb und Spock UI-Tests für einen TDD-Ansatz geschrieben werden können.

Stephan Classen Stephan Classen

ist ein TDD-Enthusiast, Open-Source-verrückt und liebt es, die Code-Qualität hochzuhalten. Er arbeitet als Senior Software Engineer bei Canoo Engineering in Basel, ist Mitglied beim Apache-Onami-Projekt und regelmäßiger Teilnehmer am Hackergarten. In seiner Freizeit erkundet er mit seinen zwei Kindern die Welt.