Lerneinheit: Anforderungsbasiertes Testen
Anforderungsbasiertes Testen ist eine Methode, bei der überprüft wird, ob ein System die vom Kunden festgelegten funktionalen und nicht-funktionalen Anforderungen erfüllt. Hier ist ein Überblick über die wichtigsten Aspekte:
Definition
Anforderungsbasiertes Testen (Requirements-Based Testing) konzentriert sich darauf, Testfälle direkt aus den Anforderungen abzuleiten. Das Hauptziel besteht darin, sicherzustellen, dass alle Anforderungen durch entsprechende Tests abgedeckt sind und das System wie beabsichtigt funktioniert[1].
Vorgehen
Anforderungsanalyse: Zunächst werden die Anforderungen detailliert analysiert und dokumentiert.
Testfallableitung: Basierend auf den Anforderungen werden spezifische Testfälle erstellt. Jeder Testfall sollte eine oder mehrere Anforderungen abdecken.
Testdurchführung: Die Testfälle werden ausgeführt, um zu überprüfen, ob das System die Anforderungen erfüllt.
Ergebnisbewertung: Die Testergebnisse werden analysiert, um festzustellen, ob die Anforderungen erfüllt sind oder ob es Abweichungen gibt.
Vorteile
Nachvollziehbarkeit: Jede Anforderung ist durch spezifische Testfälle abgedeckt, was die Nachvollziehbarkeit und Transparenz erhöht.
Qualitätssicherung: Durch die direkte Verknüpfung von Anforderungen und Tests wird sichergestellt, dass alle wichtigen Funktionen des Systems getestet werden.
Fehlererkennung: Frühzeitige Erkennung von Abweichungen und Fehlern, die auf unklare oder fehlende Anforderungen zurückzuführen sind[2].
Herausforderungen
Aufwand: Die Erstellung und Pflege der Testfälle kann zeitaufwendig sein, insbesondere bei komplexen Systemen.
Änderungsmanagement: Änderungen an den Anforderungen erfordern eine Anpassung der entsprechenden Testfälle, was zusätzlichen Aufwand bedeutet[3].
Beispiel
Ein Beispiel für anforderungsbasiertes Testen könnte die Entwicklung einer Banking-App sein. Anforderungen könnten beinhalten, dass Benutzer Geld überweisen können, ihren Kontostand einsehen und Transaktionen nachverfolgen können. Für jede dieser Anforderungen würden spezifische Testfälle erstellt und ausgeführt, um sicherzustellen, dass die App diese Funktionen korrekt umsetzt.