LU01e - Teststufen
Teststufen bezeichnen die verschiedenen Phasen, in denen Software auf Fehler und Funktionalität geprüft wird. Jede Stufe zielt darauf ab, spezifische Fehler frühzeitig zu erkennen und die Qualität der Software schrittweise zu sichern.
Komponententest (Unit-Test)
Metapher
Bei einer Armbanduhr werden die einzelnen Komponenten wie Zahnräder, Federn, Zeiger usw. getestet. Der Komponententest eines Zahnrades prüft:
- Gibt es Abweichungen im Umfang des Zahnrades, in der Anzahl und im Winkel der Zähne?
- Gibt es Fehler im Material?
- Wie stark kann das Zahnrad belastet werden, bevor es bricht?
Software
Beim Komponententest werden einzelne Bausteine der Software getestet. Diese Tests werden vom Softwareentwickler durchgeführt, um die Lauffähigkeit und Korrektheit einzelner Teile der Software zu überprüfen. Jede Methode, Iteration und Auswahl wird beim Komponententest systematisch überprüft. Es wird nach Fehlern in den Ergebnissen der einzelnen Komponenten gesucht. Teilweise werden sogar absichtlich technische Fehlersituationen herbeigeführt, um das Verhalten der Software zu überprüfen.
Die Testfälle und Testdaten werden entsprechend der inneren Struktur der Komponenten definiert (Glassbox-Test).
Integrationstest
Metapher
Bei der Armbanduhr werden nun die verschiedenen Baugruppen wie Uhrwerk, Zifferblatt, … zusammengesetzt. Der Integrationstest prüft, ob die Zahnräder, Schrauben und Federn richtig zusammenarbeiten.
- Läuft das Uhrwerk gleichmäßig und mit der gewünschten Geschwindigkeit?
- Laufen die Zeiger ohne Widerstand über das Zifferblatt?
Software
Nachdem die Komponenten einzeln getestet wurden, wird im Integrationstest das Zusammenspiel der Komponenten getestet. In dieser Testphase werden vor allem die Schnittstellen zwischen den Komponenten überprüft. Wir suchen nach Fehlern in den Ergebnissen über den gesamten Ablauf mehrerer Komponenten hinweg.
Beim Integrationstest kommen sowohl Glassbox- als auch Blackbox-Tests zum Einsatz.
Systemtest
Metapher
Der Systemtest wird durchgeführt, nachdem die Uhr vollständig zusammengebaut wurde.
- Läuft die Uhr korrekt und ohne übermäßiges Ticken?
- Passt das vorgesehene Armband zum Gehäuse?
- Lässt sich die Uhr angenehm tragen?
Software
Im Systemtest wird das Zusammenspiel unserer Software mit den umgebenden Systemen getestet. Dabei werden auch nicht-funktionale Aspekte wie Benutzerfreundlichkeit, Performance, … getestet.
Häufig wird der Systemtest von einem unabhängigen Team von Spezialisten durchgeführt. Diese Testspezialisten definieren die Testfälle auf Basis der Anforderungen und technischen Spezifikationen. Die Struktur der Software und ihrer Komponenten wird dabei nicht berücksichtigt (Black-Box-Test).
Abnahmetest / Akzeptanztest
Metapher
Beim Abnahmetest probiert der Kunde die Uhr an. Er prüft, ob die Uhr seinen Wünschen (Anforderungen) entspricht. Wenn der Kunde zufrieden ist, wird er die Uhr kaufen.
Software
Beim Abnahmetest wird wie beim Systemtest die Software und ihre Umgebung als Ganzes getestet. Im Gegensatz zu den vorhergehenden Teststufen wird der Abnahmetest vom Kunden bzw. Auftraggeber durchgeführt. In der Regel ist der Abnahmetest Voraussetzung für die Freigabe und Bezahlung der Software.