Software-Testing: Methoden, Strategien und Validierung
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 4,56 KB
Kriterien für die Auswahl der Black-Box-Tests
Die Auswahl basiert auf realistischen Werten, typischen Werten, Extremwerten sowie illegalen Werten.
Angewandte Techniken der Black-Box-Analyse
- Äquivalenzklassenbildung
- Grenzwertanalyse
White-Box-Prüfung
Diese Methode stellt sicher, dass mindestens alle Pfade der einzelnen Module durchlaufen werden. Dabei werden Entscheidungen auf ihre Korrektheit (wahr/falsch) geprüft, alle Schleifen durchlaufen und interne Datenstrukturen validiert.
Flow Graph
Stellt die Ablaufsteuerung des Programms dar und dient dazu, die Pfade innerhalb der Software leichter zu verfolgen.
Zyklomatische Komplexität
Repräsentiert die Anzahl der unabhängigen Pfade durch die Kontrollstruktur eines Programms.
Anweisungsüberdeckung
Hierbei wird jeder Satz mindestens einmal ausgeführt. Dies erfordert mehrere Testfälle, um alle unabhängigen Pfade zu identifizieren. Eine 100%ige Abdeckung ist oft unmöglich, da manche Bedingungen im Code niemals erreicht werden können.
Bedingungsarten
- Einfache Bedingungen: Eine logische Variable oder ein relationaler Ausdruck.
- Zusammengesetzte Bedingungen: Bestehen aus zwei oder mehr einfachen Bedingungen, verknüpft durch logische Operatoren und Klammern.
Arten von Schleifen
Einfache, verkettete, verschachtelte und unstrukturierte Schleifen.
Systematische Testphasen
- Black-Box-Test: Prüft die Funktionalität des Moduls ohne Berücksichtigung des internen Codes.
- White-Box-Test: Analysiert die interne Struktur des geschriebenen Codes.
Dokumentation im Testprozess
Die Dokumentation sichert die Historie, erleichtert die Nutzung durch den Anwender, senkt Betriebskosten und unterstützt die Projektdurchführung.
Merkmale der Dokumentation
Sie muss Testpläne, Testfälle, Metriken, Statistiken, Zusammenfassungen, Bug-Reporting sowie Informationen zu Testing-Tools und Automatisierung enthalten.
Testplan
Beschreibt die Methoden, die verwendet werden, um sicherzustellen, dass die Kundenanforderungen und Software-Spezifikationen erfüllt werden.
Historische Nachweise und Ereignisberichte
Dokumentieren alle relevanten Fakten während der Testdurchführung sowie jeden Vorfall im Test.
Abnahmetests (Acceptance Tests)
Diese dienen dazu, zu überprüfen, ob das System die grundlegenden Anforderungen und die erwartete Performance erfüllt, um die Akzeptanz durch den Benutzer zu bestimmen.
Validierung des Systems
Erfolgt primär durch die Durchführung von Black-Box-Tests.
Funktionsweise der Abnahmeprüfung
Eingabedaten werden verarbeitet und die Ergebnisse mit den Soll-Werten verglichen. Bei Übereinstimmung ist der Test bestanden; andernfalls kann das System die Bedingungen des Benutzers nicht erfüllen.
Hauptziel der Abnahmeprüfung
Sicherzustellen, dass der Benutzer nach erfolgreichem Abschluss der Prüfung mit dem Ergebnis zufrieden ist.
Debugging und Fehlerbehebung
Debugging dient der Identifikation und Behebung von Programmfehlern.
Phasen der Programmreinigung
- Laborphase: Das Programm ist fast fertig und wird intern auf Fehler geprüft.
- Beta-Phase: Verteilung des Produkts an ausgewählte Tester.
- Gamma-Phase: Veröffentlichung der ersten öffentlichen Version basierend auf Feedback und Vorschlägen.
Schritte zur Fehlerbehebung
Fehler erkennen, Ursache ermitteln, Lösung bestimmen, Lösung anwenden und das Programm erneut testen.
Validierung
Überprüfung, ob das entwickelte System tatsächlich den Anforderungen des Anwenders entspricht.
Grenzen der Testmethoden
- Grenzen der Black-Box: Prüft nicht, ob das Programm Dinge tut, die es nicht tun sollte.
- Grenzen der White-Box: Prüft, ob der Code korrekt funktioniert, aber nicht, ob er das tut, was der Anwender benötigt.
Integrationstests
Beziehen sich auf die Prüfung aller Elemente, die zusammen eine Einheit bilden.
Arten der Integration
- Top-Down-Integration: Von größeren Modulen zu den kleinsten.
- Bottom-Up-Integration: Von den kleinsten Modulen zu den größten.
Die Wahl der Integrationsstrategie hängt von den Softwaremerkmalen und der Projektplanung ab.