gearsGrundlagen

Der dynamische Test beschreibt die PrĂŒfung des Testobjekts durch dessen AusfĂŒhrung auf einem Rechner. Damit ein dynamischer Test durchgefĂŒhrt werden kann, muss ein ablauffĂ€higes Programm vorliegen.

In den unteren Teststufen (Komponenten- und Integrationstest) ist das Testobjekt oft noch nicht als eigenstĂ€ndiges Programm lauffĂ€hig. Es muss daher in einen Testrahmen (Test Bed) eingebettet werden, um die AusfĂŒhrung zu ermöglichen.

Drawing

Treiber und Platzhalter bilden zusammen den Testrahmen, der mit dem Testobjekt zusammen das ablauffÀhige Programm ergibt.

Unterschied zum statischen Testen

Der wesentliche Unterschied zwischen statischen und dynamischen Tests liegt in der AusfĂŒhrung des Testobjekts. WĂ€hrend beim statischen Test Dokumente und Programmtext ohne eine AusfĂŒhrung auf einem Rechner geprĂŒft werden, setzt der dynamische Test ein ablauffĂ€higes Programm voraus, das mit Testdaten versorgt und tatsĂ€chlich ausgefĂŒhrt wird.

chevron-rightGegenstand der PrĂŒfunghashtag

Statische Tests können auf alle Arten von Arbeitsergebnissen (Anforderungen, EntwĂŒrfe, Quellcode, VertrĂ€ge, BenutzerhandbĂŒcher) angewendet werden. Dynamische Tests konzentrieren sich ausschliesslich auf den ausfĂŒhrbaren Programmcode.

chevron-rightArt der gefundenen Fehlerhashtag

Statische Tests entdecken FehlerzustÀnde (Defekte) direkt im Dokument. Dynamische Tests weisen dagegen Fehlerwirkungen (AusfÀlle) nach, also die sichtbaren Konsequenzen von im Code verborgenen FehlerzustÀnden.

chevron-rightZeitpunkt im Lebenszyklushashtag

Statische Verfahren können sehr frĂŒh (z.B. direkt nach der Erstellung einer Spezifikation) eingesetzt werden. Dynamische Tests können erst durchgefĂŒhrt werden, wenn ein ausfĂŒhrbares Programmfragment vorliegt.

chevron-rightQualitÀtsmerkmalehashtag

Statische Tests bewerten vor allem die innere QualitÀt und Wartbarkeit (Struktur, Einhaltung von Standards). Dynamische Tests messen Eigenschaften, die erst zur Laufzeit sichtbar werden, wie Performanz, Antwortzeiten oder das Ressourcenverhalten.

Vor- und Nachteile

RealitĂ€tsprĂŒfung

Sichtbarkeit von Fehlwirkungen

Messbarkeit


SpÀterer Start

Aufwendige Diagnose

Infrastrukturbedarf

Elemente des Testrahmens

chevron-rightTestobjekthashtag

Das Testobjekt ist die Komponente oder das (Teil-)System, das getestet wird. Es wird mit Eingabedaten versehen und zur AusfĂŒhrung gebracht.

chevron-rightTesttreiberhashtag

Ein Testtreiber ist ein Testwerkzeug oder ein speziell entwickeltes Programm, das das Testobjekt aufruft und/oder steuert. Der Treiber muss das Testobjekt mit den Eingabedaten versorgen.

chevron-rightPlatzhalterhashtag

Das Testobjekt ruft meist weitere Programmteile ĂŒber definierte Schnittstellen auf. Wenn diese Teile noch nicht implementiert oder nur simuliert werden sollen, werden sie durch Platzhalter (Stubs) realisiert. Platzhalter simulieren das Ein-/Ausgabeverhalten des eigentlich aufzurufenden Programmteils.

chevron-rightLaufzeitumgebung, Analysewerkzeuge, Monitorehashtag

Die gesamte Umgebung, in der der Test ablĂ€uft, umfasst die benötigte Hardware, Simulatoren, Softwarewerkzeuge und weitere unterstĂŒtzende Hilfsmittel.

chevron-rightTestausgaben, Vergleich und Protokollhashtag

Das Testobjekt erzeugt Ausgaben. Die Ergebnisse des Testlaufs sind zu protokollieren. Das tatsÀchliche Ergebnis wird mit dem erwarteten Ergebnis verglichen, um Abweichungen und Fehlerwirkungen festzustellen.

Blackbox- und Whitebox-Testverfahren

Zur systematischen Erstellung von TestfÀllen beim dynamischen Testen werden Testverfahren in zwei Hauptkategorien eingeteilt.

Drawing
Blackbox
Drawing
Whitebox

Blackbox-Testverfahren

Basis

Blackbox-Verfahren werden auch spezifikationsbasierte oder verhaltensgesteuerte Verfahren genannt. Die TestfÀlle werden aus der Spezifikation oder Anforderungsbeschreibung abgeleitet.

Sichtweise

Das Testobjekt wird als »schwarzer Kasten« angesehen; Informationen ĂŒber den Programmtext und den inneren Aufbau sind nicht erforderlich.

Steuerung und Beobachtung

Der Point of Control (PoC) (Steuerung) und der Point of Observation (PoO) (Beobachtung) liegen ausserhalb des Testobjekts.

Fokus

Diese Verfahren konzentrieren sich auf die Eingaben und Ausgaben des Testobjekts.

Whitebox-Testverfahren

Basis

Whitebox-Verfahren werden auch strukturelle oder strukturbasierte Verfahren genannt. Die TestfÀlle werden aufgrund der Programmstruktur (Programmcode oder detaillierte Spezifikation) gewonnen.

Sichtweise

Diese Verfahren fokussieren auf die Struktur und die AblÀufe innerhalb des Testobjekts.

Steuerung und Beobachtung

Der PoO (Beobachtung) liegt innerhalb des Testobjekts, da der innere Ablauf analysiert wird. In AusnahmefÀllen kann der PoC (Eingriff in den Ablauf) auch innerhalb des Testobjekts liegen.

Ziel

Ein nachzuweisender Überdeckungsgrad (z. B. 80 % aller Anweisungen des Testobjekts sollen ĂŒberdeckt werden) wird angestrebt.

Anwendung

Das primÀre Anwendungsgebiet liegt im Komponententest bzw. dem Test der API der zu testenden Komponenten.

Last updated