Entscheidungsbäume in der SAP-Testautomation
Einsatz von Entscheidungsbäumen in der SAP-Testautomation
Testautomation, als Teil der Qualitätssicherungsmaßnahmen eines Unternehmens, muss wie alle anderen Teile dieses hochsensiblen Fachgebiets den Richtlinien, Methoden und Maßnahmen aus anerkannter Testmethodik und-praxis folgen, um eine objektive und verlässliche Bewertung der Qualität von SAP-Systemen liefern zu können.
Inhalt unseres heutigen Blog-Artikels bildet die Verwendung von Entscheidungsbäumen in der SAP-Testautomation, welche in der Fachwelt oft diskutiert und teilweise kontrovers gesehen wird.
Definition Entscheidungsbäume
Entscheidungsbäume, im Programmierkontext beispielsweise If-ElseIf-Else-Klauseln oder Wenn-Dann-Bedingungen, werden eingesetzt, wenn sich Prozesse ab einem bestimmten Punkt, je nach Ausprägung eines Kriteriums (beispielsweise: Materialart), unterschiedlich verhalten.
Die Verwendung von Entscheidungsbäumen in einem Testfall resultiert also darin, dass nicht nur der Prozess, den der Testfall durchläuft, sondern auch das Ergebnis je Ausführung unterschiedlich sein können.
In einer ersten Reaktion werden viele unter Ihnen nun sagen: Das darf nicht sein, ein Testfall muss in seinem Verhalten, Ablauf und Ergebnis eindeutig sein.
Bevor wir auf unsere Sichtweise bei Entscheidungsbäumen und deren Verwendung in der SAP-Testautomation eingehen, betrachten wir noch kurz ein Praxisbeispiel sowie einige anerkannte Richtlinien des Testens, welche uns als wichtig erscheinen.
Praxisbeispiel Variantenkonfiguration
Wir testen die Variantenkonfiguration unseres SAP-Systems und möchten diese mit einer möglichst hohen Testabdeckung versehen.
Nun sind unsere Varianten dahingehend unterschiedlich, dass sie sich in gewissen Teilen anhand der benötigten Daten und Eingabefelder unterscheiden.
Es entstehen also an gewissen Punkten für jede Variante eigene Prozessabläufe, welche sich durchaus voneinander unterscheiden können.
Umgelegt auf die Qualitätssicherung bedeutet dies: für jeden eindeutigen Prozessablauf muss ein Testfall erstellt werden.
Testmethodik und Richtlinien als Grundlage der Bewertung des Einsatzes von Entscheidungsbäumen
Die Grundlage für die Betrachtung unserer Problemstellung bieten zwei Richtlinien international anerkannter Testmethodik:
- Testfälle müssen deterministisch sein. Darunter versteht man, dass ein Testfall bei mehrmaliger Ausführung und gleichbleibenden Vorbedingungen immer das gleiche Ergebnis liefern muss.
- Akzeptanzkriterien müssen eindeutig und messbar sein und somit ein Testergebnis ohne Interpretationsspielraum ermöglichen.
Brechen wir eine Lanze für Entscheidungsbäume
Basierend auf diesen beiden Annahmen wollen wir nun erläutern, warum aus unserer Sicht Entscheidungsbäume in der Testautomation durchaus ihre Daseinsberechtigung haben und dies auch mit anerkannter Testpraxis konform geht. Wichtig hierbei ist jedoch, beide oben angeführten Richtlinien einzuhalten.
Wie bereits weiter oben dargelegt, müsste ohne Verwendung von Entscheidungsbäumen für jede unserer Varianten aus dem Praxisbeispiel ein eigener Testfall angelegt werden.
Diese eindeutigen Testfälle würden allen Kriterien der anerkannten Testpraxis genügen:
- eindeutige Vorbedingungen
- eindeutiger Prozess, der durchlaufen wird
- eindeutiges, erwartetes Ergebnis
Umgelegt auf Testautomation ist damit ein gewisser Aufwand verbunden, da alle unterschiedlichen Varianten des Prozessdurchlaufs als einzelne Testfälle abgebildet werden müssen.
Entscheidungsbäume liefern uns eine Möglichkeit, Prozesse, die sich in Teilen voneinander unterscheiden, als einen Testfall abzubilden.
So weit so gut, doch ist dies im Hinblick auf saubere Testmethodik auch zulässig?
Für jeden Durchlauf unseres Entscheidungsbaum-Testfalls müssen VOR der Ausführung folgende Aspekte klar und eindeutig festgelegt sein:
Für jede
- Vorbedingung
muss klar sein, welcher
- eindeutige Pfad des Prozesses
durchlaufen wird und welches
- eindeutig erwartete, Ergebnis eintreffen muss,
um den Durchlauf des Testfalls als erfolgreich zu kennzeichnen.
Werden alle dieser drei Aspekte berücksichtigt, so erfüllen Entscheidungsbaum-Testfälle alle angeführten Richtlinien der Testpraxis:
- Jeder Testlauf für sich ist deterministisch – bei gleichwertigen Eingabedaten (gleichbleibende Vorbedingung) liefert der Testfall immer dasselbe Ergebnis.
- Die Akzeptanzkriterien sind für jede Kombination an Vorbedingungen eindeutig bestimmt, der Pfad des Durchlaufs ist eindeutig definiert und das Ergebnis ist eindeutig messbar.
Fazit
Als Fazit dieses Blogartikels sind wir der Meinung, dass unter Einhaltung festgelegter Regeln, Entscheidungsbäume alle Kriterien der Testmethodik auch in der Anwendung der Testautomation erfüllen.
Richtig eingesetzt helfen Entscheidungsbäume, den Aufwand sowohl bei Erstellung als auch Wartung von Testfällen zu optimieren und somit komplexe und umfangreiche Testszenarien, wie jenes der Variantenkonfiguration, einfacher zu bewältigen.
Wollen Sie mehr über den Einsatz von Entscheidungsbäumen in der Testautomation mit der suxxesso Tool Suite erfahren?
Kontaktieren Sie uns jetzt!
Melden Sie sich sehr gerne bei uns für ein unverbindliches Gespräch und/oder für eine Live-Demonstration dieses Features auf einem SAP-System!