Zum Inhalt springen

Data-Driven Testing

Data-Driven Testing

Was ist Data-Driven Testing?

Data-Driven Testing (DDT) ist eine Testmethode, bei der Testfälle mit verschiedenen Testdaten ausgeführt werden. Anstatt für jede Datenkombination einen separaten Testfall zu erstellen, nutzt DDT eine generische Testlogik. Diese durchläuft identische Testschritte mit unterschiedlichen Werten.

Die konkreten Werte für Eingaben und erwartete Ergebnisse werden in einer Datentabelle gespeichert. Jede Zeile der Tabelle entspricht einer Testausprägung. Dadurch lassen sich Tests effizient skalieren, die Testabdeckung erhöhen und Redundanzen vermeiden. Neue Datenkombinationen sind schnell hinzugefügt oder aktualisiert. Besonders in der Testautomatisierung ermöglicht DDT eine einfache und flexible Abbildung verschiedener Szenarien.

Herausforderungen beim Verwalten und Verwenden von Testdaten

Die Arbeit mit Testdaten ist mit verschiedenen Problemstellungen verbunden, darunter Datenmanagement, Verfügbarkeit und Qualität.

Testdatenverwaltung und -pflege

Das Erstellen und Aktualisieren von Testdaten ist komplex. Um zuverlässige Tests sicherzustellen, müssen Daten stets aktuell und repräsentativ für reale Anwendungsfälle sein.

Abhängigkeiten zwischen Daten

Manche Tests erfordern spezifische Datenkombinationen, um bestimmte Zustände zu erzeugen. Werden diese Abhängigkeiten nicht sorgfältig gemanagt, können inkonsistente Daten zu Verzögerungen oder Instabilitäten führen.

Datenqualität

Nur qualitativ hochwertige Testdaten liefern aussagekräftige Testergebnisse. Unvollständige oder fehlerhafte Daten können dazu führen, dass echte Fehler übersehen oder falsche Fehlermeldungen erzeugt werden.

Vorgaben für die Testautomatisierung

Testdaten sollten unabhängig vom Testcode definiert werden, sodass Änderungen flexibel vorgenommen werden können. Auch temporäre Testdaten, die nur für einen Testfall benötigt werden, müssen sauber verwaltet werden.

Vorteile von Data-Driven Testing

Variiert das Verhalten eines Systems bei gleichen Abläufen beim Verwenden verschiedener Daten, dann hat das datengetriebene Testen etliche Vorteile:

Wann ist Data-Driven Testing zu empfehlen?

Data-Driven Testing ist besonders effektiv, wenn viele Datenkombinationen getestet werden müssen oder Testfälle wiederverwendet werden. Vor allem bei datengetriebenen Anwendungen reduziert DDT den manuellen Aufwand, verbessert die Testabdeckung und steigert die Effizienz.

Wenn Testfälle stark von externen Testdaten abhängen, ermöglicht DDT eine einfache Verwaltung und Skalierung. Die Vorbereitung von Testdaten für Eingaben oder spezielle Zusammenstellungen, etwa für Frachtbriefe oder Versicherungsformulare, erleichtert sowohl die Spezifikation als auch die Testdurchführung.

Besonders leistungsfähig ist Data-Driven Testing in Kombination mit Keyword-Driven Testing.

Wie funktioniert Data-Driven Testing mit TestBench?

TestBench verwaltet Testdaten strukturiert und kontextbezogen. Um dies zu ermöglichen, werden Daten in eigenen Datentypen abgelegt. Diese Struktur verbessert die Verwaltung und erleichtert den Zugriff auf benötigte Werte.

Schritt 1

Tests in TestBench enthalten standardmäßig eine Datentabelle, in der die zugehörigen Werte der Testfälle abgelegt sind. In der Testdefinition legt einen Parametertabelle fest, welche Datentypen in der Datentabelle benötigt werden.

Schritt 2

Die Datentabelle enthält die konkreten Werte der Datentypen, die in der Parametertabelle festgelegt wurden. Jede Zeile enthält die Daten für einen Testfall, die bei der Testdurchführung verwendet werden.

Schritt 3

In der Definition des Testfalls werden die Werte von den festgelegten Schritten verwendet (siehe Keyword-Driven Testing).

Wie werden die Testdaten verwaltet?

Die Datentypen verwalten Werte als Repräsentanten des gleichen fachlichen Typs, also im obigen Beispiel z.B. Fahrzeugnamen oder Sondermodellnamen.

Die Datentypen verwalten Werte als Repräsentanten des gleichen fachlichen Typs, also im obigen Beispiel z.B. Fahrzeugnamen oder Sondermodellnamen.

Wie können Tests noch verständlicher werden?

Werden in Testfällen viele Daten benötigt, können Tabellen schnell unübersichtlich werden. TestBench löst dieses Problem durch hierarchische Datenstrukturen. Diese ermöglichen es, zusammengehörige Werte kompakt darzustellen.

Die zugehörigen Werte werden dadurch übersichtlicher und verständlicher.

Die Darstellung der Daten wird auch in den Testdefinitionen und Testfällen übersichtlicher und einfacher verständlich.

Wenn nötig kann auf die inneren Werte der Datentypstruktur über deren Pfad in der Struktur zugegriffen werden, z.B. auf den Fahrzeugnamen über „Fahrzeugkonfiguration.Fahrzeug.Fahrzeugname“, wie in der Abbildung zu sehen.

Welche Vorteile hat Data-Driven Testing beim manuellen Test?

Data-Driven Testing steigert nicht nur die Effizienz der Testautomatisierung, sondern verbessert auch manuelle Tests.

Schnellere Testdurchführung

Wiederholte Testsequenzen lassen sich zügiger ausführen, da sie nicht jedes Mal neu gelesen werden müssen.

Reduzierte Fehleranfälligkeit

Statt Werte manuell einzutippen, können vorhandene Datensätze einfach durchlaufen werden. In der TestBench lassen sich Daten zudem direkt aus der Zwischenablage einfügen.

Erhöhte Testeffizienz

Durch eine gezielte Variation von Testdaten lassen sich mehr Szenarien abdecken – ohne zusätzlichen manuellen Aufwand.


Details zur Testdurchführung findest du hier und im Blogbeitrag „Weniger Mühe, mehr Effizienz: Der Assistent iTORX“.

Deine Fragen – unsere Antworten

Hast du Fragen zu Data-Driven Testing oder suchst du Unterstützung bei der Optimierung deiner Testprozesse? Unsere Expert:innen stehen dir gerne zur Verfügung. Kontaktiere uns, und wir helfen dir dabei, deine Teststrategien effizient und erfolgreich zu gestalten.