Testing Flashcards
Definiere Software Testing
Ein Softwaretest prüft auf definierte Anforderungen und misst deren Qualität.
Erkenntisse daraus werden zur Erkennung und Behebung von Fehlern benutzt.
Welche Eigenschaft bezüglich Bugs besitzen Tests?
Tests können nur die Präsenz von Bugs zeigen, nie aber deren Abwesenheit.
„Program testing can be used to show the presence of bugs, but never show their absence!“ - Edsger W. Dijkstra
Was sind White-Box-Tests?
Bei White-Box-Tests haben die Tester Zugriff und Kenntnis über die Entwicklung der Software.
Tester kennen den Code, oder können sich in den Code einarbeiten um ihn zu Testen.
Welche Tests werden bei einem White-Box-Test durchgeführt?
Zu den White-Box-Tests zählen in erster Linie Unit- und Integrationstests.
Welche Stufen besitzt ein White-Box-Test?
Er besitzt zwei Stufen.
In der ersten Stufe führen die Programmierer, die den Code schrieben die Tests aus.
In der zweiten Stufe werden die Tests von Programmierern ausgeführt, die sich erst noch in den Code einarbeiten.
Was ist unter Zeilenüberdeckung zu verstehen?
Die Ausführung aller Quellcode-Zeilen
Was ist unter Anweisungsüberdeckung zu verstehen?
Die Ausführung aller Anweisungen
Was versteht man unter Zweigüberdeckung?
Das Durchlaufen aller möglichen Verzweigungen des Kontrollflusses
Was versteht man unter Bedingungsüberdeckung?
Das Durchlaufen aller möglichen ausschlaggebenden Belegungen bei logischen Ausdrücken in Bedingungen
Was versteht man unter Pfadüberdeckung?
Die Betrachtung der Pfade durch ein Modul
Was ist ein Black-Box-Test?
Die Tester haben bei dieser Art von Test keinen Zugriff und im Idealfall auch keine Kenntnis über die Entwicklung der Software.
In welche Stufen lässt sich ein Black-Box-Test unterteilen?
In zwei Stufen.
•In der ersten Stufe wird von Kunden getestet. Die Tests sind dabei meist Funktionstests.
•In der zweiten Stufe wird von erfahrenen Software-Testern (z.B. Penetration Tester) getestet. Diese arbeiten sich in die Auftragsspezifikationen ein und führen Tests, wie unter anderem Stresstests, durch.
Welche verschiedenen Testlevel gibt es?
- Unit Testing
- Integration Testing
- System Testing
- Accaptance Testing
Was sind Unit Tests?
Unit Tests testen die kleinsmögliche Einheit der Software.
Im Test-Driven-Development schreibt man Code und damit einhergehend auch immer gleich die Unit Tests.
Auch bekannt als Module, Component oder Program Test.
Was ist ein Integration Test?
Bei einem Integrationstest werden individuelle Units verknüpft und deren Interaktion getestet.
Ein typischer Integrationstest ist das Schnittstellen / API Testen.