Datenquelle

Aus succestWiki
Wechseln zu: Navigation, Suche

Eine Datenquelle ist eine tabellarische Datensammlung, die von einem Administrator unter einem eindeutigen Namen über das succest Testcase Repository (TCR) bereitgestellt und aktualisiert werden kann. Diese Datensammlung steht dann innerhalb des succest Testcase Editor (TCE) zur Verwendung bereit. Ausgewertet wird die Datenquelle zur Laufzeit des Testfalls. Wird die Datenquelle also zu einem späteren Zeitpunkt im TCR aktualisiert, steht bei der nächsten Ausführung des Testfalls die veränderte Datensammlung bereit.

Anwendungsgebiete

Bildung von Äquivalenzklassen

Oft wird ein Testfall für eine definierte Äquivalenzklasse definiert. Der Beweis, dass das System sich tatsächlich für alle Elemente der Äquivalenzklasse gleich (und hoffentlich richtig) verhält, lässt sich auf einfache Weise führen, indem man das Element der Äquivalenzklasse in einer Datenquelle zusammenfasst und den entsprechenden Testfall dann für jedes Element der Datenquelle ausführen lässt. Wird später die Äquivalenzklasse erweitert, muss der Testfall nicht mal angepasst werden.

Variationen bei der Testdatenerzeugung

Speziell Testfälle, die primär der Testdatenerzeugung dienen (siehe hierzu Kiosktestfälle) sollen oft eine definierte Anzahl an Variationen zum gleichen Objekt erzeugen. Nehmen wir an, das zu testende System unterscheidet Kunden in Bezug auf das Alter (minderjährig, bis 54, ab 55), in Bezug auf das Geschlecht (männlich, weiblich) und in Bezug auf den Beziehungsstatus (Ehe, eingetragene Lebenspartnerschaft, Lebensgemeinschaft, unbekannt). Optimal wäre hier eine Datenquelle mit drei Spalten und den insgesamt 24 möglichen Kombinationen der Werte in Form der Datensätzen. Ein Testfall kann nun diese Datenquelle nutzen um in einem Schwung Kunden mit Ausprägungen in den 24 möglichen Kombinationen zu erzeugen.

Anreicherung von Daten

Im Regelfall werden mit dem Testfall Testdaten synthetisiert. Damit bspw. Testkunden nicht alle "Max Mustermann" heißen, hinterlegt man im System eine Datenquelle mit 1.000 Vornamen und eine mit 1.000 Nachnamen. Bei der Ausführung kann der Testfall dann zufällig einen Vornamen aus der einen Datenquelle und einen Nachnamen aus der anderen Datenquelle ziehen. So hat man auf einfach Art und Weise 1.000.000 mögliche synthetisierte Namen mit einer geringen Wiederholungswahrscheinlichkeit (ACHTUNG: Wiederholungen sind nicht ausgeschlossen und werden spätestens ab dem 1.000.001 Lauf vorkommen).

Verwendung von Datenquellen

Datenquelle in den Testfall einbinden

Es gibt zwei Aktivitäten, die beide eine benannte Datenquelle im Testfall über eine Variable bereitstellen. "Aktivität Liste aus Datenquelle laden" und "Aktivität Liste aus Datenquelle selektieren". Beide Aktivitäten laden die in der Aktivität angegebene Datenquelle in eine Variable vom Typ DataSourceList. Dabei stellt die Aktivität "Liste aus Datenquelle laden" die gesamte Datenquelle mit allen Datensätzen bereit, die Aktivität "Liste aus Datenquelle selektieren" nur eine Teilmenge, die einem in der Aktivität angegebenen Selektionskriterium entspricht.

Wie Sie geladene Daten verarbeiten können sehen Sie im Cheat Sheet - Arbeiten mit Datenquellen und im nachfolgenden Beispiel.

Beispiel für die Verwendung

Das vereinfachte Beispiel zeigt, wie Sie eine Datenquelle laden (Abbildung 1) und dann in einer ForEach-Aktivität für jede einzelne Zeile in der Datenquelle eine Aktivität aufrufen (Abbildung 2). Sie müssen die Datenquelle nicht Zeile für Zeile durchgehen, Sie können auch einen zufälligen oder einen bestimmten Datensatz auswählen. Mehr dazu gibt es hier.

Verwaltung

Allgemeines

Damit eine neue Datenquelle im TCE zur Auswahl bereitsteht, muss das TCE aktualisiert oder neugestartet werden. Der Neustart ist nicht notwendig, wenn Sie eine bestehende Datenquelle überschrieben haben.
Die Datenquellen werden im TCR verwaltet. Sie können dort neue Datenquellen hochladen, bestehende überschreiben, die Beschreibung ändern, sich den Inhalt in tabellarischer Form anzeigen lassen und auch löschen.

Bearbeiten

Datenquellen können auf zwei Arten bearbeitet werden: Ihre Beschreibung und ihr Inhalt kann geändert werden. Die Beschreibung ändern Sie ganz einfach bei der Liste aller Datenquellen. Den Inhalt können Sie durch das Hochladen einer anderen Datei (siehe nächster Abschnitt) oder durch das manuelle Bearbeiten der Daten ändern. Je nach Konfiguration, können Sie in der Vorschau einer Datenquelle neue Zeilen hinzufügen, bestehende bearbeiten oder löschen.

Hochladen

Am Anfang von jeder Datenquelle steht das Hochladen ins TCR. Von Haus aus kommt das TCR mit einem Konverter, der Ihre CSV-Dateien entgegennimmt und in seinen Datenhaushalt aufnimmt. Wenn die Daten nicht mehr aktuell sind, können Sie diese entweder manuell bearbeiten (siehe vorheriger Abschnitt) oder einfach überschreiben.

Möchte man ein Datenquelle hochladen, muss man darauf achten, dass die Datei eine fest hinterlegte Kodierung (Byte-Order-Marks) verwendet. Zum Festlegen der Kodierung kann ein Texteditor, wie z.B. Notepad++ verwendet werden.

Byte-Order-Marks können einer Datei bspw. auf folgendem Weg mitgegeben werden:

  1. Datei in Notepad++ öffnen
  2. In Notepad++ unter dem Menüpunkt „Kodierung“ eine Kodierung mit der Endung „-BOM“ auswählen. (Die Kodierung UTF-8-BOM wird empfohlen)
  3. Datei speichern.

Hinweis: Nach dem Ändern der Kodierung in der Datei kann es sein, das manche Zeichen, wie z.B. [Ä,Ö,Ü,ß,...], nicht mehr richtig angezeigt werden. Diese sollten nach dem Ändern der Kodierung erneut eingegeben werden. Nach dem Ändern der Kodierung kann es sein, dass die Sonderzeichen in einer kryptischen Form, wie z.B. ü, dargestellt werden. Bitte überprüfen Sie nach dem Ändern der Kodierung die Dateien und änderen Sie die kryptischen Vorkommnisse in das gewünschte Sonderzeichen ab.

Herunterladen

Das Herunterladen einer Datenquelle kann nützlich sein, wenn man eine Datenquelle exportieren möchte. Möchte man nicht nur eine einzige Datenquelle herunterladen, so kann man auch mehrere Datenquellen herunterladen indem man die jeweiligen Datenquellen auswählt und herunterlädt. Die Datenquellen werden als ZIP-Datei gepackt und heruntergeladen.