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

  1. Laborphase: Das Programm ist fast fertig und wird intern auf Fehler geprüft.
  2. Beta-Phase: Verteilung des Produkts an ausgewählte Tester.
  3. 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.

Verwandte Einträge: