Your SlideShare is downloading. ×
Regressionstests in Webprojekten - IPC12SE
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Regressionstests in Webprojekten - IPC12SE

743
views

Published on

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 …

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?

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
743
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Sebastian Bauer, inovex GmbHRegressionstestsin Webprojekten
  • 2. Vorstellung@litervollmilchAuto-Nerd und -Bloggerpassiondriving.deAgile Coach @inovex GmbHPforzheim, Köln, München
  • 3. REGR... WHAT?
  • 4. REGR... WHAT?
  • 5. • Wiederholung bereits durchgeführter Tests• Neue Fehler aufdecken (Software Regression)• Bugfixes verifizieren• Änderungen validieren• Werden bei jeder Änderung ausgeführt• Risikominimierung REGR... WHAT?
  • 6. • Progressive Regressionstests • Spezifikation verändert • Code geändert ‣ Neue Testfälle• Korrigierende Regressionstests • Spezifikation unverändert • Änderungen gegen bestehende Testfälle testen REGR... WHAT?
  • 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
  • 8. Regressionstests = Continuous Integration?
  • 9. Arten von Regressionstests
  • 10. Unit Tests
  • 11. Unit TestsPrüfe, ob das Ergebnis vonfoobar(„foo“) gleich „bar“ ist.
  • 12. AkzeptanztestsAkzeptanztests
  • 13. AkzeptanztestsPrüfe, ob der Klick auf den Button „In den Einkaufswagen“ den Artikel in den Einkaufswagen legt.
  • 14. Smoke Tests
  • 15. Smoke TestsPrüfe, ob der Aufruf einer Artikelseite auch wirklich eine Artikelseite zeigt.
  • 16. Warum das ganze Theater?
  • 17. Der Schlüssel zum Erfolg
  • 18. Automatisierung!
  • 19. Continuous Integration
  • 20. Bamboo Jenkins (Hudson) CruiseControl
  • 21. Erfolgreiches CI als Prozess• Direktes Feedback -> schnelle Builds• Tägliche Checkins• Commits in den Trunk• Automatisierter Build• Deploy-Automation
  • 22. Build nach jedem Commit! Automatischer Build • Unit Tests • Syntax Tests • Smoke Tests • Coding Standards • Copy/Paste Detection • Dokumentation • ...
  • 23. Niemand wartet gerne! Automatischer Build • Unit Tests • Syntax Tests • Smoke Tests • Coding Standards • Copy/Paste Detection Regelmäßiger Build • Dokumentation • ... • Unit Tests • Syntax Tests • Coding Standards • Copy/Paste Detection • + Akzeptanztests • + Dokumentation • + sonstige intensivere Tests
  • 24. Continuous Delivery
  • 25. Kontinuierliche Deploys
  • 26. Feature Toggles
  • 27. Warum nicht BDD probieren?• Behaviour Driven Development• Nicht nur eine Entwicklungsmethodik• Erwartung vs. Testfall• Ausführbare Spec. vs Ansammlung von Tests
  • 28. 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
  • 29. BDD Tool: behat• Funktioniert „headless“• sehr einfacher Test-Code• Made for PHP• http://www.behat.org
  • 30. Fazit?
  • 31. 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
  • 32. DAS WAR‘S! Fragen? Kommentare?twitter @litervollmilchmail sebastian.bauer@inovex.deweb http://inovex.de

×