2. Wer sind wir
Sebastian Helzle
Neos, TYPO3, Freelancer, JS, Scrum
@sebobo
Benedikt Kastl
Frontendler, JS, OpenDeviceLab
@bkastl
3. Um was geht es
• Behat, Selenium, Mink, Gherkin, Fixtures
• Wie sieht ein einfacher Test aus
• Testen während der Entwicklung
• Automatisiertes Testen und manuelle Tests
• Monitoring / Smoketesting
• Testmaps für Kunden und QA
• Dalek.js
• Fallstricke
4. Behat, Gherkin, Mink
• Behat
• Framework für behaviour
driven development (bdd)
• Gherkin
• Tests in normaler Sprache schreiben
• Mink
• Library für Behat für User Acceptance Tests (UAT) im
Browser
6. Selenium, Webdriver
• Testsuite für automatische Browsertests
• Support für IE, FF, Chrome, phantomjs
• Benötigt laufenden Server
• Clients verbinden sich zum Server
• Unterstützt Testgrids zur Lastverteilung
• Webdriver erlaubt die Interaktion mit der Webseite
8. Testen beim Entwickeln
• Schnelle und langsame Tests
• Headless oder nicht, das ist hier die Frage
• phantomjs, slimerjs
• Code kommt nur auf Master, wenn der Test grün ist
(und die anderen weiterhin grün sind)
9. Automatisiert und manuell
• Nicht jeder Test kann einfach automatisiert werden
• Manuelle Tests können mit der gleichen Sprache
dokumentiert werden (Tagging)
• Je mehr automatisiert desto besser
• Wichtig für CI-Umgebung
10. Monitoring / Smoketests
• Funktioniert das Produktivsystem auch aus
Usersicht
• Funktioniert das System nach einem Deployment
13. Fallstricke
• Selenium nicht immer stabil
• Webdriver verhält sich nicht immer wie ein echter
User
• Tests können lange dauern
• phantomjs 1.x unterstützt keine Webfonts
• Echte Bugs nur auf echten Geräten