Shift-Left-Testing verstehen und anwenden: Was ist Shift-Left-Testing?
In der Blogbeitrags-Reihe „Shift-Left-Testing verstehen und anwenden“ haben wir uns bisher mit dem traditionellen Test-Ansatz in der Softwareentwicklung und der Motivation für ein neues Vorgehen beschäftigt. Wie Sie Ihre Entwicklung mithilfe des Shift-Left-Testing-Ansatzes optimieren, erfahren Sie hier.
„No amount of testing can prove a software right, a single test can prove a software wrong.” — Amir Ghahrai
Fragen Sie sich nach diesem Zitat nicht auch: „Was wäre, wenn ich diesen einen Test bereits in der Entwicklungsphase durchgeführt hätte? Hätte ich meinen geplanten Software-Release dann vielleicht einhalten können?” Genau mit dieser Frage und mit der Frage, wie Shift-Left-Testing dabei hilfreich sein kann, beschäftigen wir uns in diesem Beitrag.
Der Shift-Left-Testing-Ansatz
Getreu der Maxime „Test early and often.” von Larry Smith geht es beim Shift-Left-Testing darum, implementierte Inkremente so früh wie möglich in der Entwicklung zu testen. Zentral hierbei ist es, das Testen in den Softwareentwicklungsprozess zu integrieren und dadurch Fehler früh aufzudecken. Das Beheben dieser Fehler wird dadurch wesentlich vereinfacht und minimiert zeitgleich die resultierenden Kosten.
Wieso Shift-Left-Testing?
Ziel des Ansatzes ist…
- proaktives Erkennen von Fehlern in den frühen Phasen des Softwareentwicklungsprozesses.
- die Steigerung der Effizienz und zeitgleich die Senkung die resultierenden Kosten.
- frühzeitiges Erkennen und Reduzierung von Produktionsfehlern.
- die Verkürzung langer Testzyklen nach der vollständigen Implementierung.
Shift-Left-Qualitätsmodell
Da es um einiges einfacher und kostengünstiger ist, Fehler zu beheben, die frühzeitig im Entwicklungsprozess entdeckt wurden, ist das Ziel des Shift-Left-Testing Ansatzes, Probleme so früh wie möglich zu erkennen. Der Aufwand für nötige Korrekturen oder Anpassungen fällt so geringer aus – Zeit und Kosten für die Behebung sinken.
Anstatt wie beim traditionellen Vorgehen weiter auf eingeschlichene Fehler aufzubauen um erst in der finalen Test-Phase zu entdecken, zielt Shift-Left-Testing darauf ab, Fehler bereits im Keim aufzugreifen und zu beheben.
Shift-Left (nach links verschieben) bedeutet in diesem Kontext daher, so früh wie möglich mit dem Testen zu beginnen (Verschiebung nach links auf der Entwicklungs-Lebenszyklusachse).
Der Schlüssel zum Erfolg dieses Ansatzes liegt darin, die Mitarbeiter der Qualitätssicherung (Tester) frühzeitig in die Planung und Entwicklung mit einzubeziehen. Diese können zusätzlichen Input bezüglich Anforderungsanalyse, Funktionalität oder gesamter Architektur liefern. So können Sie bessere Test-Szenarien entwerfen und Fehlern im Coding von Vornherein vorbeugen.
Der Ansatz führt allerdings nur zum Erfolg, wenn alle Beteiligten ein hohes Qualitätsbewusstsein entwickeln.
Die Vorteile von Shift-Left-Testing
- Frühzeitiges Erkennen: Da Sie Defekte rechtzeitig erkennen, können Sie diese einfach beheben, bevor sie zu einem größeren Problem in der Produktion werden.
- Kosteneinsparungen: Der Ansatz verbessert die Effizienz Ihres Entwicklungsteams, da durch die frühzeitige Identifikation von Fehlern Folgefehler minimiert werden.
- Verlässlichkeit in den Tests: Verantwortliche entwerfen sicherere und umfassendere Tests, da das Entwicklungsteam und die Qualitätssicherung von Anfang an zusammenarbeiten.
- Verbesserung der Teamarbeit: Qualität liegt in der Verantwortung aller. Dieses Qualitätsbewusstsein verbindet und wird durch Teamarbeit weiter ausgebaut.
- Beschleunigung der Auslieferung: Entwickler führen Tests so früh wie möglich aus. Dadurch werden lange Testphasen nach der fertigen Entwicklung minimiert und der Entwicklungs-Lebenszyklus beschleunigt.
Fazit
Shift-Left-Tesing erspart Ihnen im Gegensatz zum traditionellen Vorgehen eine Menge Zeit und Kosten. Denn dadurch, dass Sie Fehler in einer frühen Phase des Entwicklungsprozesses entdecken, minimiert sich der Aufwand, um diese zu beheben.
Sie möchten sich noch weiter mit dem Thema beschäftigen? Dann empfehle ich Ihnen auch die anderen Beiträge dieser Reihe. Sie haben noch konkrete Fragen, die Sie klären möchten? Kontaktieren Sie mich auch gerne persönlich! Ich freue mich auf Ihren Kontakt.
Überblick über die Artikel der Serie „Shift-Left-Testing verstehen und anwenden“
- Ausgangssituation & Motivation
- Was ist Shift-Left-Testing?
- Wie wende ich Shift-Left-Testing in der Praxis an?