Softwaretests managen und automatisieren

Testdatenmanagement bei Applikationstests

Testdaten aus verschiedenen Datenbanken

Die meisten Unternehmen speichern ihre Datenbestände in verschiedenen relationalen Datenbanken wie DB2, DB2 UDB, Oracle, SQL Server, Sybase und Informix. Aber auch hierarchische oder nicht relationale Formate wie VSAM-Dateien und IMS-Datenbanken enthalten oft Unternehmensdaten, auf die die neu entwickelte Anwendung zugreifen soll.

Beim Testen komplexer Anwendungen werden folglich Daten aus relationalen und nicht relationalen Datenquellen benötigt. Die Integration verschiedener Systeme ist hier eine typische Anforderung. Aber auch Qualitätstests müssen Daten aus verschiedenen Datenbankmanagementsystemen auf unterschiedlichen Plattformen handhaben können.

Testdaten aus homogenen Datenbanken

Bei homogenen Datenbanken ist die Technologie der Live-Datenbank und der Testdatenbank identisch oder zumindest kompatibel. Eine der Herausforderungen bei der Erstellung von Testdaten ist die Extraktion kompletter Subsets von zusammengehörigen Daten und die Aufrechterhaltung der Referenzen zwischen diesen Daten. Deshalb müssen alle Beziehungen im Datenmodell durchforstet werden, wobei es keine Rolle spielt, ob diese in der Datenbank oder in der Anwendung definiert sind (siehe Abbildung 1).

Abb. 1: Testdaten aus homogenen Datenbanken.
Abb. 1: Testdaten aus homogenen Datenbanken.

Testdaten aus heterogenen Datenbanken

Umgebungen mit heterogenen Datenbanken können unterschiedliche Hardwarekomponenten, Betriebssysteme und Datenmodelle sowie syntaktische und semantische Unterschiede aufweisen. Hier können vor allem Probleme bei der Datenkompatibilität und -umsetzung auftreten. In der Regel passiert das bei der Migration einer Anwendung auf eine andere Datenbank oder Testumgebung. Beispielsweise kann es erforderlich sein, Datenteilmengen aus einer DB2-UDB-Produktionsdatenbank zu extrahieren und in eine Oracle-Testdatenbank einzufügen. Diese Verlagerung kann zu Problemen bei Sonderregistern oder Datums- und Zeitmarken führen, die von jeder DBMS unterschiedlich gehandhabt werden (siehe Abbildung 2).

Abb. 2: Testdaten aus heterogenen Datenbanken.
Abb. 2: Testdaten aus heterogenen Datenbanken.

Neben der Extraktion von Daten-Subsets mit intakten Referenzen müssen also auch Kompatibilitätsunterschiede automatisch gemanagt werden.