Was ist Gray Box Testing? Techniken, Beispiel

Inhaltsverzeichnis:

Anonim

Gray-Box-Test

Gray-Box-Test oder Gray-Box-Test ist eine Software-Testtechnik zum Testen eines Softwareprodukts oder einer Anwendung mit teilweiser Kenntnis der internen Struktur der Anwendung. Der Zweck von Gray-Box-Tests besteht darin, die Fehler aufgrund einer fehlerhaften Codestruktur oder einer nicht ordnungsgemäßen Verwendung von Anwendungen zu suchen und zu identifizieren.

In diesem Prozess werden häufig kontextspezifische Fehler identifiziert, die sich auf Websysteme beziehen. Es erhöht die Testabdeckung, indem es sich auf alle Schichten eines komplexen Systems konzentriert.

Gray Box Testing ist eine Software-Testmethode, die eine Kombination aus White Box-Test und Black Box-Testmethode darstellt.

  • Beim White-Box-Testen ist die interne Struktur (Code) bekannt
  • Beim Black-Box-Test ist die interne Struktur (Code) unbekannt
  • In Gray Box Testing ist die interne Struktur (Code) teilweise bekannt

In der Softwareentwicklung bietet Gray Box Testing die Möglichkeit, beide Seiten einer Anwendung, der Präsentationsschicht sowie des Codeteils zu testen. Es ist vor allem beim Integrationstest und beim Penetrationstest nützlich.

Beispiel für Gray-Box-Tests: Während beim Testen von Websites Funktionen wie Links oder verwaiste Links auftreten, kann der Tester, wenn er auf ein Problem mit diesen Links stößt, die Änderungen sofort im HTML-Code vornehmen und in Echtzeit überprüfen.

Warum Gray Box-Tests?

Gray-Box-Tests werden aus folgendem Grund durchgeführt:

  • Es bietet kombinierte Vorteile von Black-Box-Tests und White-Box-Tests
  • Es kombiniert den Input von Entwicklern und Testern und verbessert die Gesamtproduktqualität
  • Es reduziert den Aufwand für lange Tests zum Testen von funktionalen und nicht funktionalen Typen
  • Ein Entwickler hat genügend Zeit, um Fehler zu beheben
  • Das Testen erfolgt aus Anwendersicht und nicht aus Designersicht

Gray-Box-Teststrategie

Um Gray-Box-Tests durchzuführen, muss der Tester nicht auf den Quellcode zugreifen können. Ein Test basiert auf der Kenntnis von Algorithmen, Architekturen, internen Zuständen oder anderen allgemeinen Beschreibungen des Programmverhaltens.

So führen Sie Gray-Box-Tests durch:

  • Es wird eine einfache Technik des Black-Box-Testens angewendet
  • Es basiert auf der Generierung von Anforderungstestfällen und stellt als solches alle Bedingungen vor, bevor das Programm durch eine Assertionsmethode getestet wird.
Techniken, die für Gray-Box-Tests verwendet werden, sind:
  • Matrixtest: Bei dieser Testtechnik werden alle Variablen definiert, die in ihren Programmen vorhanden sind.
  • Regressionstests : Um zu überprüfen, ob die Änderung in der vorherigen Version andere Aspekte des Programms in der neuen Version zurückgebildet hat. Dazu werden Strategien wie das erneute Testen aller, das erneute Testen riskanter Anwendungsfälle und das erneute Testen innerhalb einer Firewall durchgeführt.
  • Orthogonal Array Testing oder OAT : Bietet maximale Codeabdeckung bei minimalen Testfällen.
  • Musterprüfung: Diese Prüfung wird an den historischen Daten der vorherigen Systemfehler durchgeführt. Im Gegensatz zu Black-Box-Tests werden beim Gray-Box-Test der Code überprüft und festgestellt, warum der Fehler aufgetreten ist

Normalerweise verwendet die Gray-Box-Methodik automatisierte Softwaretest-Tools, um die Tests durchzuführen. Stubs und Modultreiber werden erstellt, um den Tester von der manuellen Generierung des Codes zu entlasten.

Schritte zum Durchführen von Gray-Box-Tests sind:
  • Schritt 1 : Identifizieren Sie die Eingaben
  • Schritt 2 : Identifizieren Sie die Ausgänge
  • Schritt 3 : Identifizieren Sie die Hauptpfade
  • Schritt 4 : Unterfunktionen identifizieren
  • Schritt 5 : Entwickeln Sie Eingaben für Unterfunktionen
  • Schritt 6 : Entwickeln Sie Ausgänge für Unterfunktionen
  • Schritt 7 : Testfall für Unterfunktionen ausführen
  • Schritt 8 : Überprüfen Sie das korrekte Ergebnis für Unterfunktionen
  • Schritt 9 : Wiederholen Sie die Schritte 4 und 8 für andere Unterfunktionen
  • Schritt 10 : Wiederholen Sie die Schritte 7 und 8 für andere Unterfunktionen

Die Testfälle für Gray-Box-Tests können GUI-bezogene, sicherheitsbezogene, datenbankbezogene, browserbezogene, betriebssystembezogene usw. umfassen.

Gray Box Testherausforderungen

  • Wenn eine zu testende Komponente auf einen Fehler stößt, kann dies zum Abbruch des laufenden Betriebs führen
  • Wenn der Test vollständig ausgeführt wird, der Inhalt des Ergebnisses jedoch falsch ist.

Zusammenfassung:

  • Durch Gray-Box-Tests können die Gesamtkosten für Systemfehler reduziert und verhindert werden, dass sie weiter bestehen
  • Gray-Box-Tests eignen sich eher für GUI, Funktionstests, Sicherheitsbewertungen, Webanwendungen, Webdienste usw.
  • Techniken, die für Gray-Box-Tests verwendet werden
    • Matrixtest
    • Regressionstests
    • OAT- oder orthogonale Array-Tests
    • Musterprüfung