Konzept: Strukturtest
Der Schlüssel zu strukturierten Tests ist, dass alle Entscheidungsergebnisse während der Tests unabhängig voneinander ausprobiert werden müssen, und dass die Anzahl der für ein Softwaremodul erforderlichen Tests der regelmäßig auftretenden Komplexität dieses Moduls entspricht.
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Das Konzept des Strukturtests wird in zwei Hauptkontexten verwendet. Das Grundkonzept bzw. der Grundgedanke beim Strukturtest ist, obwohl vom Wesen her unterschiedlich, möglicherweise dasselbe bzw. derselbe.

Strukturtests von Codeinterna

In älteren und vielleicht gebräuchlicheren Referenzinformationen bezieht sich der Begriff "Strukturtest" auf das Testen der internen Struktur des Softwarequellcodes. In den meisten Fällen wird diese Form des Strukturtests als statischer Test (im Gegensatz zu einem dynamischen Test), in dem die Software selbst nicht ausgeführt wird, eingesetzt. Diagnosetools führen eine Syntaxanalyse des Quellcodes durch und suchen nach strukturellen Fehlern und Schwächen. Normalerweise erstellen sie eine Liste, der Sie dann die notwendigen Korrekturmaßnahmen entnehmen können. Diese Art von Test und Bewertung wird von Entwicklern und nicht von Systemtestern durchgeführt.

Strukturtests von Websites

Webbasierte Anwendungen, d. h. Anwendungen, die Internet-Anwendungstechnologie einsetzen, setzen sich immer mehr durch. Diese Entwicklung wurde gefördert durch den Umstand, dass diese Softwareentwicklungs- und -Deployment-Methode Organisationen die Möglichkeit bietet, verschiedene technologiegesteuerte Wettbewerbsvorteile zu nutzen, z. B.:

  • Entwickelte Zielgruppe aus Kunden, Aussichten und Geschäftspartnern, ohne ein einziges Stück Software oder Papier senden zu müssen. Jeder, der einen Browser hat und die Möglichkeit hat, auf das Internet oder ein Intranet zuzugreifen, kann einfach den veröffentlichten URL aufrufen und sofort die Anwendung ausführen.
  • Zentrale Steuerung und Verwaltung. Das "Thin-Client/Fat-Server"-Modell aus webbasierten Anwendungen platziert die Anwendungskomponenten und die Anwendungslogik auf dem Webserver, der die Steuerung und Verwaltung zentralisiert. Auch das ermöglicht den Entwicklern, die Software automatisch zu verteilen. Wenn die Anwendung sich auf dem Server befindet, ist sie sofort für alle Server verfügbar.

Diese Technologie bietet ihren Nutzern zwar Vorteile, erhöht aber auch den Testbedarf. Das Testen dieser webbasierten Anwendungen konzentriert sich ebenso wie das Testen ihrer nicht webbasierten Pendants (Client/Server, traditionelle Produkte usw.) auf die Funktions- und Leistungsmerkmale der Anwendungen. Außerdem benötigen webbasierte Anwendungen Tests, die sich auf die Struktur der Anwendung konzentrieren und sicherstellen, dass sie korrekt aufgebaut ist und alle Links funktionieren.

Normalerweise werden webbasierte Anwendungen mit einer Reihe von Dokumenten (HTML-Textdokument und GIF/JPEG-Grafiken), die durch viele statische und einige wenige aktive bzw. programmgesteuerte Links verbunden sind. Diese Anwendungen können auch so genannten aktiven Inhalt beinhalten, z. B. Formulare, Java-Scripts, von Plug-ins übergebenen Inhalt oder Java-Anwendungen. Häufig wird dieser aktive Inhalt nur für die Ausgabe, z. B. die Audio- oder Videodarstellung, verwendet. Er kann allerdings auch als Navigationshilfe verwendet werden, um dem Benutzer die Navigation in der Anwendung (Website) zu erleichtern. Die Formlosigkeit der webbasierten Anwendungen (über ihre Links) ist eine große Stärke, stellt aber zugleich auch eine große Schwäche dar, da ihre strukturelle Integrität leicht beschädigt werden kann.

Strukturtests werden implementiert und durchgeführt, um zu überprüfen, ob alle Links (statische oder aktive) richtig verknüpft sind. Diese Tests umfassen folgende Punkte:

  • Überprüfen, dass für jeden Link der richtige Inhalt angezeigt wird. Verschiedene Link-Typen werden verwendet, um Zielinhalte in webbasierten Anwendungen zu referenzieren, z. B. Lesezeichen, Hyperlinks zu anderen Zielinhalten (auf derselben oder einer anderen Website) oder Hotspots. Jeder Link muss überprüft werden, damit sichergestellt werden kann, dass dem Benutzer der richtige Zielinhalt angezeigt wird.
  • Sicherstellen, dass es keine defekten Links gibt. Defekte Links sind Links, für die der Zielinhalt nicht ermittelt werden kann. Links können aus vielen Gründen defekt sein, z. B., weil die Dateien des Zielinhalts verschoben, entfernt oder umbenannt wurden. Links können auch aufgrund falscher Syntax, wie fehlender Schrägstriche, Doppelpunkte oder Buchstaben, defekt sein.
  • Sicherstellen, dass kein verwaister Inhalt vorhanden ist. Von verwaistem Inhalt spricht man, wenn sich auf der aktuellen Website kein eingehender Link befindet, d. h., wenn der Inhalt nicht aufgerufen bzw. dargestellt werden kann. Die Ursachen für verwaisten Inhalt müssen sorgfältig untersucht werden:
    • Ist der Inhalt verwaist, weil er tatsächlich nicht mehr benötigt wird?
    • Ist der Inhalt verwaist aufgrund eines defekten Links?
    • Oder erfolgt der Zugriff auf den Inhalt über einen externen Link, d. h., einen Link, der sich nicht auf der aktuellen Website befindet?

Sobald die Ursache festgestellt ist, muss die passende Aktion ausgeführt werden, z. B. Entfernen der Inhaltsdatei, Korrigieren des defekten Links oder aber Ignorieren des verwaisten Inhalts.