Gerade im Web sind kurze Releasezyklen oft unabdingbar. Meist werden noch viele manuelle Tests gemacht, die ein bremsender Faktor für häufige Releases sind. Was gehört dazu, um bei Veränderungen des Projekts automatisiert zu prüfen, ob noch alles funktioniert? Wie kann man darauf aufbauen und was kommt danach?
7. Was bedeutet das genau?
• Akzeptanztests
• Unit Tests
• Tests für zu ändernde Komponenten
• Tests für Bugfixes
• Test bei Änderungen ausführen
• Tests immer aktuell halten
28. Warum nicht BDD probieren?
• Behaviour Driven Development
• Nicht nur eine Entwicklungsmethodik
• Erwartung vs. Testfall
• Ausführbare Spec. vs Ansammlung von Tests
29. BDD Beispiel: Artikel in
Warenkorb
• Gegeben dem Fall, ein Kunde möchte einen
Film kaufen
• und sein Warenkorb ist leer
• und es sind noch 2 Filme auf Lager:
• Wenn er den Artikel in den Warenkorb legt
• dann soll der Artikel im Warenkorb auftauchen
• und der Zähler für die Produkte im Warenkorb
auf „1“ gehen
30. BDD Tool:
behat
• Funktioniert „headless“
• sehr einfacher Test-Code
• Made for PHP
• http://www.behat.org
32. Fazit
• Regressionstests wichtig
• Regressionstest nur mit Automation!
• CI unterstützt Regressionstests
• CI bietet Potential für noch viel mehr
• Continuous Delivery kann/sollte CI Ziel sein
• BDD kann alles wunderbar unterstützen
33. DAS WAR‘S!
Fragen? Kommentare?
twitter @litervollmilch
mail sebastian.bauer@inovex.de
web http://inovex.de