Was ist besonders am Black-Box-Testentwurfsverfahren?
Keine Informationen über Programmtext und die innere Struktur
Testfälle werden aus den vorliegenden Anforderungen an das Testobjekt, z.B. der Spezifikation entwickelt
Beobachtet wird das Verhalten des Testobjekts (primär: die Funktionalität) von außen, die Steuerung des Testobjektes erfolgt nur durch die Eingabetestdaten
Was sind die Methoden zur Testfallerstellung?
Äquivalenzklassenbildung
Grenzwertanalyse
Entscheidungstabellentest
Zustandsbasierter Test
Anwendungsfallbasierter Test
Grundidee: Wenn der ÄK Wert keinen Fehler aufdeckt macht es auch kein anderer Wert der ÄK, genauso andersherum wenn ein Fehler aufgedeckt wird
Bei der Bildung der Äquivalenzklassen werden die Definitionsbereiche der Werte betrachtet, primär die gültigen Eingabewerte.
Die Zerlegung erfolgt in gültige und ungültige Äquivalenzklassen.
In Verzweigungs- und Schleifenbedingungen gibt es oft Grenzbereiche, für welche die Bedingung gerade noch zutrifft (oder gerade nicht mehr) was fehleranfällig ist
am besten mir anderen Verfahren kombinieren
In der Regel werden der Grenzwert selbst sowie die Werte unmittelbar über bzw. unter dem Grenzwert getestet
Atomare (geordnete) Bereiche (integer, real, char)
Mengenwertige Bereiche (z.B. bei Datenstrukturen, Beziehungen)
Die Verwendung aller möglichen Kombinationen aus Eingabewerten ist in der Regel nicht praktikabel (vgl. Heuristiken zur Testfallerstellung).
Entscheidungstabellentests fassen Kombinationen unterschiedlicher Eingabewerte zusammen und können damit auch Abhängigkeiten berücksichtigen
mögliche Ursachen (=Eingabewerte) und deren Wirkungen (=Ausgabewerte) werden in der Entscheidungstabelle übersichtlich dargestellt.
Bei einer ganzen Reihe von Systemen hat neben den Werten der Eingaben auch der Zustandsverlauf des Systems Einfluss auf die Berechnung der Ausgaben bzw. das Systemverhalten:
Ein „endlicher Automat“ besteht aus einer endlichen Anzahl von internen Zuständen.
Der Zustand eines Systems beinhaltet implizit die Informationen, die sich aus den bisherigen Eingaben ergeben haben und die benötigt werden, um die Reaktion des Systems auf nachfolgende Eingaben zu bestimmen.
Zustands-Konformanztest (Positivtest)
Zustands-Robustheitstest (Negativtest)
6 Schritte beim Testen (mit Zustandsdiagramm)
Zustandsbasierte Tests dort einsetzen, wo Zustände eine Rolle spielen und wo die Funktionalität durch den jeweiligen Zustand des Testobjektes unterschiedlich beeinflusst wird. Die anderen bisher vorgestellten Testentwurfsverfahren berücksichtigen dies nicht!
Beim Anwendungsfallbasierten Test stehen Prozessabläufe im Mittelpunkt.
Sie beschreiben das Systemverhalten aus Sicht des Anwenders → Testfälle werden aus den Use Cases abgeleitet.
Die Beschreibungselemente des Use Cases (Vorbedingungen, Verhaltensweise der Systems, Nachbedingungen) werden auch für die Testfälle benötigt.
Last changed2 years ago