Intelligente Testauswertung in Deployment Pipelines
Nein:
Wenn ihr nie Fehler macht
Wenn euch Testen egal ist
Wenn ihr nicht wisst, dass der Kunde Testen bezahlen sollte
In allen anderen Fällen:
JA!
Entwickler
- Testen ist Standard, nicht Ausnahme
- Testen spart Zeit, Geld und Nerven
- Testen erhöht die Softwarequalität
DevOps
- Test Chaining
- Pipeline Design
- Grenzwerte
Shopbetreiber
- Protokollierte Verbesserung
- Einfache Kontrolle
- Blick über den Tellerrand
Entscheider
- Effiziensteigerung
- Sicherheit
- Teamentwicklung
Was brauche ich, um zu starten?
Kommt drauf an...
Vorbereitung und TTFR*
*TTFR = Time To First (Test) Result
Lessons learned:
Lokal (grumphp)
Pipeline Design (Gitlab)
Acceptance Testing (Codeception / Cypress.io)
Static Testing
Add > Test > React > Repeat
Jedes Projekt ist erstmal ein Patient
Diät
- Lokal Testen spart Pipeline Runs und gibt direktes Feedback
- Jeder Test soll maximal einmal pro Piepline laufen
- Grenzwerte setzen und dagegen arbeiten
- Ständige Verbesserung der Werte
Teile und herrsche
- Trenne framework (core) testing, Drittanbieter-Module und Eigentwicklung
- Parallelisierung von Tests spart Zeit
Den Turm zu Babel einreißen
- Normalisierung der Projekt-Setups
- Dokumentierter Test-Context (wo, was, wer, wie)
- Imitiere die Produktivumgebung so nah wie nötig
Vertraue der Macht
- Hauptinformationen identifizieren und extrahieren (regex FTW)
- Vergleichbare Grundlage schaffen
- Ergebnisse interpretieren
- Ständig inkrementelle Verbesserungen umsetzen