Spezifikationen für alle Schichten

Presentation 30'

Abstract

In dieser Proof-of-concept Demonstration zeigen wir, wie Spezifikation mit Beispielen für die verschiedenen Schichten einer Webapplikation genutzt werden kann.

Dieselben FitNesse Tests, die in einer für den Domänenexperten verständlichen Form geschrieben sind, greifen dabei über unterschiedliche Adapter zum einen auf die Business Schicht im Backend, dann auf eine REST Api und schließlich per Selenium auf die Weboberfläche zu.

Zum einen zeigen wir, wie Akzeptanztests weitestgehend von Implementierungsdetails entkoppelt werden können und sich durch Abstraktion eine bessere Lesbarkeit und Wartbarkeit der Tests ergibt. Zum anderen wird die Vielseitigkeit von Akzeptanztests herausgehoben. Sie begleiten die Entwicklung durch alle Schichten. Bei diesem Vorgehen, entsteht von selbst ein System, dass auf allen Ebenen Testbarkeit ermöglicht und dem Domänenexperten oder Tester auch vor Entstehen einer Benutzeroberfläche hilft, das korrekte Verhalten des Systems zu verifizieren, bzw. falsches Verhalten frühzeitig zu erkennen. Hierbei verlieren wir natürlich das Prinzip der vertikalen Entwicklung einer User Story nicht aus dem Auge und entwickeln gerade durch die Tests für alle Schichten ein Verständnis, wie die Logik aus dem Backend im Frontend dargestellt werden kann.

Unser Vorgehen mit einer Suite von Tests, die ohne Veränderung der Test Formulierung für alle Schichten genutzt wird, ist vermutlich nicht allgemein sinnvoll und auch nicht immer anwendbar, soll aber das Aha - Erlebnis hervorrufen, dass automatisierte Akzeptanztests eben nicht in erster Linie zur Abnahme des fertigen Systems durch Simulation des Benutzerverhaltens dienen, sondern die Kommunikation zwischen Domänenexperten und Entwickler im Vorfeld fördern sowie die Entwicklung eines testbaren Systems unterstützen.

Speaker

Gregor Gramlich

 

Veranstalter der XPDays:


andrena objects Logo
it-agile Logo

Medien-Partner der XPDays:


dotnetpro Logo
Web Developer Logo
OS Logo
dpunkt Logo

Partner-Events der XPDays:


SoCraTes LogoALE Logo

Platinum Sponsor der XPDays:

SAP Logo