Testentwurfstechniken – Testentwurfstechniken

Was sind die verschiedenen Testentwurfstechniken?
Testentwurfstechniken sind Testentwurfsstandards, die die Erstellung systematischer und allgemein akzeptierter Testfälle ermöglichen. Diese Techniken beruhen auf verschiedenen wissenschaftlichen Modellen und auf der langjährigen Erfahrung vieler Qualitätssicherungsexperten.
Testentwurfstechniken lassen sich grob in zwei Teile unterteilen – „Statische Testentwurfstechnik“ und „Dynamische Testentwurfstechnik“.
Entwurfstechniken für statische Prüfungen
Statische Testverfahren sind Testverfahren, bei denen der Code oder die Softwareanwendung nicht ausgeführt wird. Das statische Testen befasst sich also im Wesentlichen mit der Qualitätssicherung, die die Überprüfung und das Audit von Code und anderen Entwurfsdokumenten umfasst.
Die verschiedenen Techniken zur Entwicklung statischer Tests lassen sich in zwei Bereiche unterteilen: „Manuell durchgeführte statische Tests“ und „Statische Tests mit Hilfe von Tools“.
1. Manuelle statische Entwurfsverfahren
- Kontinuierliche Kontrolle
Ein Walk-through ist eine sequentielle Präsentation verschiedener Anforderungs- und Entwurfsdokumente durch ihre Autoren. Sie wird mit der Absicht durchgeführt, Fehler oder fehlende Teile in den Dokumenten zu finden.
- Informelle Überprüfung
Wie der Name schon sagt, handelt es sich dabei um eine informelle Überprüfung, die von einer Einzelperson ohne jedes Verfahren oder Dokumentation durchgeführt wird.
- Technische Überprüfung
Die technische Überprüfung beinhaltet eine Überprüfung des technischen Ansatzes, der während des Entwicklungsprozesses verwendet wurde. Es handelt sich eher um eine Peer-Review-Aktivität, die im Vergleich zu Audits und Inspektionen weniger formell ist.
- Prüfung
Ein Audit ist eine formale Bewertung der Übereinstimmung verschiedener Prozesse und Artefakte mit Normen und Vorschriften. Sie wird in der Regel von einem externen oder unabhängigen Team oder einer Person durchgeführt.
- Inspektion
Die Inspektion ist der formale und dokumentierte Prozess der Überprüfung verschiedener Dokumente durch Experten oder geschulte Fachleute.
- Management-Review
Dabei handelt es sich um eine Überprüfung verschiedener Managementdokumente wie Projektmanagementpläne, Testpläne, Risikomanagementpläne usw.
2. Statische Entwurfstechniken unter Verwendung von Werkzeugen
- Statische Codeanalyse – Statische Analysetechniken zur Bewertung von Quellcode mit Hilfe von Tools sind:
- Kontrollflussanalyse – Die Kontrollflussanalyse erfordert die Analyse aller möglichen Kontrollflüsse oder -pfade im Code.
- Datenflussanalyse – Die Datenflussanalyse erfordert eine Analyse der Daten in der Anwendung und ihrer verschiedenen Zustände.
- Einhaltung von Kodierungsstandards – Die Einhaltung verschiedener Programmierstandards wird bewertet.
- Analyse der Code-Metriken – Ein Tool für die statische Analyse wird benötigt, um verschiedene Metriken wie Codezeilen, Komplexität, Codeabdeckung usw. zu bewerten.
Dynamische Prüftechniken
Bei den dynamischen Testentwurfstechniken wird das zu testende System in Betrieb genommen. Bei dieser Technik stellt der Tester der Anwendung Eingabedaten zur Verfügung und führt sie aus. Dabei werden die verschiedenen funktionalen und nicht-funktionalen Anforderungen überprüft.
- Spezifikationsbasierte Testentwurfstechniken – Spezifikationsbasierte Testentwurfstechniken werden auch als Black-Box-Tests bezeichnet. Dabei wird gegen die Spezifikation des zu prüfenden Systems getestet, ohne dessen interne Architektur zu kennen.
Verschiedene Arten von spezifikationsbasierten Testentwurfstechniken oder Black-Box-Tests sind – „Äquivalenzpartitionierung“, „Grenzwertanalyse“, „Entscheidungstabellen“, „Ursache-Wirkungs-Diagramm“, „Zustandsübergangstests“ und „Anwendungsfalltests“.
- Strukturbasiert – Strukturbasierte Testentwurfstechniken werden auch als White-Box-Tests bezeichnet. Bei diesen Techniken sind Kenntnisse über den Code oder die interne Architektur des Systems erforderlich, um die Tests durchzuführen.
Die verschiedenen Arten des strukturbasierten Testens oder der weißen Testtechniken sind – „Statement Testing“, „Decision Testing/ Branch Testing“, „Condition Testing“, „Multiple Condition Testing“, „Condition Determination Testing“ und „Path Testing“.
- Erfahrungsbasiert – Erfahrungsbasierte Techniken erfordern, wie der Name schon sagt, keine systematischen und umfassenden Tests. Sie beruhen ausschließlich auf der Erfahrung oder Intuition des Prüfers. Die beiden häufigsten Formen des erfahrungsbasierten Testens sind Adhoc-Tests und Sondierungstests.