So arbeiten wir - mit effizienten QA Prozessen zur digitalen Exzellenz Hier gehts zum Beitrag!
Read time: ca. 5 min
Shift Left Testing

Shift-Left Testing: Schnellere Softwaretests und leichtere Entwicklung

Janina

Qualitätssteigerung bei gleichzeitiger Kostensenkung. Das sind die primären Ziele von Softwaretests. Damit beides allerdings gewährleistet werden kann, muss das Testing schon von Beginn an integriert werden. Und zwar mit Shift-Left Testing. Was das genau ist und wie es funktioniert, erfahrt ihr im Folgenden!

 

Shift-Left Testing: Was ist das?

Damit stetig neue Features geliefert werden können, werden Entwicklungszyklen immer kürzer. Dadurch geht jedoch wichtige Zeit fürs Testing verloren. Mit Shift-Left Testing soll diesem Problem ein wenig entgegen gewirkt werden und zwar dadurch, dass bereits schon vor der Entwicklung wichtige Anforderungen intensiv getestet werden.

Shift-Left Testing verfolgt den Ansatz Softwaretests zu beschleunigen und die Entwicklung zu erleichtern, indem man an einem früheren Punkt des Entwicklungsprozesses anfängt zu testen. “Left” steht also für die Verschiebung der Softwaretest auf einer Zeitachse und verweist damit auf einen früheren Zeitpunkt im Entwicklungsprozess. Beim Shift-Left-Approach werden Tests mehrfach durchgeführt. Sie sind Teil der Software-Delivery-Pipeline und wichtiger Bestandteil des DevOps-Prinzips.

Durch das Shift-Left Testing werden nicht nur die Software, sondern auch schon das Design oder wichtige Anforderungen an die Software in den ersten Stadien des Entwicklungsprozesses auf mögliche Fehler geprüft.  Werden diese nämlich bereits zu Beginn des Entwicklungsprozesses erkannt, können sie schneller und effizienter korrigiert werden, was zudem Zeit und Kosten spart. Außerdem werden Folgefehler verhindert und die Qualität der Anwendung wird bereits zu Beginn erhöht.

Shift-Left Testing ist also ein Ansatz, um die Effizienz zu steigern und Arbeitsabläufe besser planen zu können, indem man bereits im frühen Entwicklungsstadium beginnt die Software zu testen. Man testet also auch die Anforderungen des Produktes.

Durch den Einsatz des Shift-Left-Approach im Testing werden die Qualitätsmaßnahmen bzw. die Tester*innen in den gesamten Software-Entwicklungszyklus integriert. Durch den Einsatz der qualitätssichernden Maßnahmen im frühen Entwicklungsstadium, wie z.B. bei der Erstellung der Akzeptanzkriterien, wird die gesamte Software-Entwicklung effizienter und planbarer.

Die Reihenfolge der Produktentwicklung mit der Linksverschiebung sieht folglich dann so aus:

  1. Anforderungen festlegen
  2. Testing der Anforderungen
  3. Design festlegen
  4. Testing des Designs
  5. Entwicklung des Produkts
  6. Testing des Produkts
  7. Veröffentlichung des Produkts
    Reihenfolge-Shift-Left-Testing

Kontinuierliche Betreuung und Kommunikation durch Shift-Left Testing

Bei vielen Projekten wird die Software erst getestet, wenn die Entwicklung bereits vollkommen abgeschlossen ist. Beim Shift-Left Testing hingegen, erfolgt eine kontinuierliche Betreuung des Projektes bzw. der Entwicklung von Standpunkt 0 an.

Ebenso erfolgt die Kommunikation zwischen den Entwicklungsteams und dem QA-Team nicht nur zu kritischen Phasen, sondern über den gesamten Entwicklungsprozess hinweg. Sprich alle Beteiligten sind über den gesamten Zeitraum des Projektes involviert. Dieser Punkt ist ein ziemlich wichtiger Punkt, wenn es um das Thema Effizienz geht. Dadurch, dass die Tester*innen aktiv am gesamten Prozess beteiligt sind und somit unmittelbares Feedback geben können, wird verhindert, dass Fehler mitgeschleppt werden oder sich wiederholen. Entwickler*innen können dadurch viel gezielter an dem Fehler arbeiten und Verbesserungen vornehmen.

 

Shift-Left Testing: Die Vorteile

Aus dem Shift-Left Testing lassen sich folgende Vorteile ableiten:

+ Tester:Innen wirken früh mit und haben weniger Zeitdruck

+ bessere Zusammenarbeit zwischen Entwicklerteam und Softwaretester:Innen, Design- und Produktteams

+ Mögliche Barrieren und Engpässe werden frühzeitig erkannt. Dadurch steigt die Entwicklungsgeschwindigkeit, trotz verstärktem Testen

+ Durch frühzeitige Erkennung von Fehlern werden die Kosten reduziert. (Fehler, die erst im späten Entwicklungsprozess erkannt werden, kosten etwa 40x mehr als Fehler, die bereits zu Beginn entdeckt werden.  Quelle: https://www.tools4ever.de/glossar/was-ist-shift-left/)

+ mehr Zeit, um die Fehler zu beseitigen

+ Ziele: Geschwindigkeit und Qualität können beide erreicht werden

+ Geringe Risiken, mehr Kommunikation und weniger manuelle Fehler sorgen für zufriedenere Kunden und ein qualitativ hochwertiges Produkt

Vorteile-Shift-Left-Testing

Fazit: Shift-Left Testing als Hilfsmittel

Zusammenfassend lässt sich nun festhalten, dass der Shift-Left-Approach ein sehr gutes Hilfsmittel darstellt, um trotz hoher Entwicklungsgeschwindigkeit die Software-Qualität zu gewährleisten. Zudem stehen QA- und Entwicklungsteam den gesamten Prozess über in engem Austausch, was eine schnelle Fehlerbehebung und damit einhergehend eine Kostensenkung ermöglicht. Ebenso wird durch die direkte Einbeziehung der Tester:Innen sichergestellt, dass genügend Ressourcen für das Testing zur Verfügung stehen.

Auch ihr habt Interesse an Shift-Left Testing oder wollt noch ein wenig mehr über den Ablauf bei uns bei Appmatics wissen? Dann nehmt gerne Kontakt zu uns auf. Wir beraten euch gerne!