Einführung in das Black-Box-Testen

Black-Box-Testtechniken sind Methoden, die die interne Struktur, das Design oder die Implementierung des zu testenden Gegenstands beinhalten. Die durchgeführten Tests können entweder funktionsfähig oder nicht funktionsfähig sein. Dies wird als Black-Box-Test bezeichnet, da die Person, die das System testet, die interne Codestruktur nicht kennt. Der Tester weiß nichts über Implementierungsdetails und über die internen Pfade. Die Prüfung erfolgt ausschließlich auf der Grundlage der Softwareanforderungen und -spezifikationen, die dem Tester vorliegen. Das Hauptaugenmerk bei diesem Test liegt auf den Ein- und Ausgängen, die dem System bereitgestellt werden.

Techniken des Black-Box-Testens

Die Testfälle, mit denen ein System getestet werden soll, spielen beim Testen eine wichtige Rolle. Die Art und Weise, wie sie erstellt werden, und die Szenarien, die sie abdecken, sollten berücksichtigt werden. Tester können Anforderungsspezifikationsdokumente mithilfe der folgenden Techniken erstellen:

  1. Äquivalenz-Partitionierung
  2. Grenzwertanalyse
  3. Entscheidungstabellentest
  4. Zustandsübergangsprüfung
  5. Fehlervermutung
  6. Graphbasierte Testmethoden
  7. Vergleichstests
  8. Use-Case-Technik

Im Folgenden werden die Techniken erläutert:

1. Äquivalenzprüfung

  • Diese Technik unterteilt die Eingabewerte, die der Software bereitgestellt werden, in verschiedene Gruppen oder Klassen. Dies erfolgt auf der Grundlage der Ausgabe, die als Ergebnis kommen wird. Diese Technik wird auch als Äquivalenzklassenpartitionierung bezeichnet. Auf diese Weise sparen wir uns den Aufwand, verschiedene Eingaben zu machen. Stattdessen geben wir der Gruppe oder Klasse einen Wert, um das Ergebnis für diese Gruppe oder Klasse zu testen. Dies trägt zur Verbesserung der Testabdeckung und damit zur Reduzierung der Nacharbeit bei. Die Zeit wird auch gespeichert, da keine separaten Eingaben gemacht werden müssen. Die Eingabe für jede Klasse ist ausreichend.
  • Nehmen wir ein Beispiel für die Noten, die die Schüler erzielen. Wenn ein Schüler mehr als 75% erreicht, hat er sich mit Auszeichnung die erste Klasse gesichert. Wenn die Punktzahl zwischen 60% und 75% liegt, hat er / sie die erste Klasse erreicht. Wenn die Punktzahl zwischen 50% und 60% liegt, dann 2. Klasse. Wenn die Punktzahl zwischen 40% und 50% liegt, besteht die Klasse, andernfalls schlägt sie fehl. Hier wird es vier Klassen geben. Diese Testfälle werden gebildet und es wird sichergestellt, dass damit alle Möglichkeiten abgedeckt sind. Daher ist das Testen mit allen Werten in diesem Satz ausreichend.

2. Grenzwertanalyse

  • Der Fokus liegt dabei auf den Werten, die an den Grenzen vorhanden sind. Dies liegt daran, dass beim Testen mit Werten, die sich auf Grenzen konzentrieren, in der Regel viele Probleme auftreten. Boundary konzentriert sich auf Werte nahe der Grenze, an der sich das Verhalten des Systems ändert. In der Grenzwertanalyse sollen beide gültigen und ungültigen Eingaben geprüft werden.
  • Wenn wir beispielsweise Werte im Bereich von 1 bis 100 testen möchten, sollten wir prüfen, ob das Programm für Werte wie 1-1, 1 + 1, 1, 100-1, 100 + 1 usw. funktioniert. Dies hilft dabei Sparen Sie noch einmal Zeit, da wir nur nach Werten wie 0, 1, 2, 99, 100 und 101 suchen können.

3. Testen der Entscheidungstabelle

Wann immer logische Bedingungen oder Entscheidungsschritte vorliegen, ist diese Technik anzuwenden. Dies kann der Fall sein, wenn eine bestimmte Bedingung nicht erfüllt ist, dann sollte Aktion A ausgeführt werden, andernfalls muss Aktion B ausgeführt werden. Der Tester muss die Eingaben und Aktionen identifizieren, die basierend auf den Bedingungen ausgeführt werden sollen. Darauf aufbauend wird eine Entscheidungstabelle erstellt. Stellen Sie sich ein Beispiel vor, bei dem eine ungerade Anzahl von Fahrzeugen nur am Montag, Mittwoch, Freitag und Sonntag zulässig ist, während Fahrzeuge mit gerader Anzahl am Dienstag, Donnerstag und Samstag zulässig sind. In diesem Fall gibt es zwei Bedingungen und zwei Aktionen. Bedingung 1 sind ungerade Fahrzeuge und Bedingung 2 sind gerade Fahrzeuge. Die Aktionen sind die Tage, an denen diese Fahrzeuge auf den Straßen sein können. Die Gesamtzahl der Testfälle kann in diesem Fall vier betragen, und daher kann die Entscheidungstabelle entsprechend abgeleitet werden.

4. Testen des Zustandsübergangs

Bei dieser Technik versucht der Testfall, das System unter verschiedenen Zuständen zu testen. Dieser Zustand kann sich in Abhängigkeit von verschiedenen Bedingungen oder Ereignissen ändern. Wenn ein bestimmtes Ereignis eintritt, können diese Szenarien getestet werden.

5. Fehlervermutung

Diese Technik basiert hauptsächlich auf Erfahrung. Sobald ein Tester Erfahrung mit der Arbeit an einer Anwendung hat, ist ihm deren Verhalten und Funktionalität bekannt. Auf diese Weise können viele Probleme herausgefunden werden. Mithilfe dieser Erfahrung können die Tester leicht erraten, wo die meisten Entwickler fehleranfällig sind. Dies kann die Verarbeitung von Nullwerten, das Akzeptieren der Senden-Schaltfläche ohne Wert, das Hochladen einer Datei ohne Anhang, das Hochladen einer Datei mit weniger oder mehr als der angegebenen Grenzgröße usw. sein.

6. Graph-based Testing

Jede Anwendung wird unter Verwendung einiger Objekte erstellt. Alle verwendeten Objekte werden notiert und eine Grafik erstellt. Aus diesem Diagramm wird die Beziehung jedes Objekts ermittelt und die Testfälle entsprechend geschrieben.

7. Vergleichstests

Bei dieser Technik werden verschiedene Versionen derselben Software verwendet und dann verglichen, um das gesamte System zu testen. Das Verhalten wird für alle Versionen notiert und verglichen, und etwaige Abweichungen werden notiert.

8. Use Case-Technik

Diese Technik wird verwendet, um alle vom System verwendeten Testfälle zu identifizieren. Es werden alle Szenarien aufgeführt, die dazu beitragen, die vollständige Funktionalität jeder Funktion von Anfang bis Ende zu verstehen. Die Testfälle sollten Fälle enthalten, die alle Szenarien von Anfang bis Ende gemäß der Systemnutzung abdecken.

Fazit

Black-Box-Tests gehen nicht auf die Details der Codierung ein. Es konzentriert sich hauptsächlich auf das Testen und Validieren des Verhaltens und der Funktionalität der Software. Es ist kein technischer Hintergrund erforderlich, und die Tests können gestartet werden, sobald die Entwicklung des Projekts abgeschlossen ist. Sowohl Tester als auch Entwickler können in Silos arbeiten. Es ist effektiver für große Anwendungen, bei denen Funktionalität wichtiger ist als Code. Es hilft auch bei der Identifizierung von Fehlern und Problemen in der frühen Testphase. Nach Abschluss des erneuten Tests kann überprüft werden, ob die Probleme weiterhin bestehen, und das System wird erneut überprüft.

Empfohlene Artikel

Dies ist eine Anleitung zu Black Box-Testtechniken. Hier diskutieren wir die Einführung in Black-Box-Tests, Techniken und Top-8-Techniken in Black Box. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Fuzz Testing
  2. Negative Prüfung
  3. Entscheidungstabellentest
  4. Gray-Box-Test