Statische Analyse

Was ist statische Analyse von Tests?

In immer mehr Testprojekten müssen regelmäßig Nachweise über Testinhalte und Testergebnisse erbracht werden. Es ist eine fortlaufende Herausforderung, sicherzustellen, dass die Datenbasis formell korrekt und konform mit der verwendeten Prozessdefinition ist, um konsistente Nachweise zu erzeugen.

Wer schon einmal alle seine Tests daraufhin geprüft hat, ob z.B. alle mit Ergebnis fehlerhaft durchgeführten Tests auch einen Fehler referenzieren oder der Reviewer eines Tests nicht auch der Ersteller war, der kennt diese Problematik.

In der Programmierung wird die statische Codeanalyse schon sehr lange genutzt, um mit Hilfe von formalen Prüfungen Fehler frühzeitig im Quellcode zu entdecken.

Die Statische Analyse von Tests führt in Anlehnung an dieses Testverfahren eine Reihe von Prüfungen auf Basis von Testspezifikationen und Testergebnissen durch. Diese Prüfungen können alle Elemente eines Tests umfassen, d.h. beispielsweise neben dessen Testspezifikation auch dessen Testergebnisse.

Die Vorteile

Compliance-Prüfung

Prozessanforderungen an die Tests und die Einhaltung von organisatorischen Regelungen können automatisch geprüft und leicht sichergestellt werden.

Fehlervermeidung

Formale Fehler in den Tests lassen sich von vornherein vermeiden, was die Notwendigkeit von Nacharbeiten verringert und die Zuverlässigkeit der Freigaben erhöht.

Effiziente Berichterstattung

Berichte müssen nach ihrer Generierung nicht aufwändig manuell auf formale Korrektheit geprüft werden.

So funktioniert es in TestBench

 

Liste der im Projekt eingestellten Überprüfungsmodule
Liste der im Projekt eingestellten Überprüfungsmodule

Da jeder Entwicklungs- und Testprozess von Organisation zu Organisation im Detail anders ist, sind die einzelnen Prüfungen in Modulen abgelegt. So kann jedes Projekt für sich entscheiden, ob und wenn ja, welche Prüfungen ausgeführt werden sollen.

Gefundene Probleme werden per Icon und Tooltip visualisiert
Gefundene Probleme werden per Icon und Tooltip visualisiert

Jede Prüfung ist zusätzlich ein Schweregrad zugeordnet, der die Wichtigkeit der damit gefundenen Probleme bestimmt. Hierbei werden Informationen, Warnungen und Fehler unterschieden.

Zu leichteren Bearbeitung der Prüfungsergebnisse werden die betroffenen Elemente (z.B. Durchführungsergebnisse) markiert und es können alle Probleme zentral abgearbeitet werden.

Zentrale Darstellung zur Bearbeitung aller vorhandenen Probleme
Zentrale Darstellung zur Bearbeitung aller vorhandenen Probleme

 

Statische Analyse im Testdesign nutzen

Die statische Analyse von Tests ist ein mächtiges Werkzeug im Bereich des Testdesigns und hilft Nachweispflichten zu erfüllen. Sie ermöglicht es, Testspezifikationen und Testergebnisse automatisch auf formale Korrektheit und Konformität mit den Prozessvorgaben zu überprüfen. Diese Technik unterstützt Testdesigner dabei, systematisch sicherzustellen, dass alle Testfälle korrekt referenziert sind und keine Rollenkonflikte wie etwa zwischen Ersteller und Reviewer von Tests auftreten. Durch die frühzeitige Identifikation formaler Fehler und Inkonsistenzen kann die Qualität der Tests maßgeblich verbessert werden, bevor sie in die Durchführungsphase gehen.