Testdatenautomatisierung

 

Testdatenmanagement in DevOps

Herausforderungen

 

Anwendungen und Datenbanken haben ihre eigene Logik und einzigartigen Eigenschaften. Damit Testdaten in diesen Kontexten nützlich sind, müssen sie Produktionsmerkmale widerspiegeln, wie z.B:

  • Auswahlbedingungen (Geschäftsregeln)
  • Spaltenattribute und Transformationen
  • Inter-Feld/Schlüssel-Beziehungen (referentielle Integrität)
  • Wertebereiche und spaltenübergreifende Berechnungen

Auch Testdaten zur Produktionsqualität müssen diese Attribute aufweisen:

  • Typ - korrekte Spalten-/Feldwerte und Formate
  • Breite - Werte mit aktuellen (und zukünftigen) Bereichen
  • Häufigkeit - realistische Muster des Auftretens von Werten
  • Tiefe - Volumina, die Skalierbarkeitsprobleme ansprechen

In einer schnelllebigen DevOps- und Continuous Integration (CI)/ Continuous Deployment (CD)-Umgebung kann die Fähigkeit, konsistente und realistische Testsätze zu generieren und zu automatisieren, die in Format und Umfang sehr unterschiedlich sein können, eine große Herausforderung darstellen und Programmierer mit engen Lieferfristen ablenken.

Lösungen

Anwendungen, die mit realistischen Datenformaten und -mengen entwickelt werden, haben in der Produktion eher Aussicht auf Erfolg. Das IRI RowGen-Testdatengenerierungstool verwendet Produktionsmetadaten, um benutzerdefinierte Testsätze mit zufällig generierten Daten und/oder zufällig ausgewählten Daten aus Produktionsquellen zu synthetisieren. Die Datenmaskierungstools IRI FieldShield und IRI DarkShield können auch zum Auffinden und Maskieren von PII und anderen sensiblen Daten in der Produktion verwendet werden, um sichere Ziele in niedrigeren Testumgebungen zu erstellen.

Um die richtigen Werte und Wertebereiche zu erzeugen, verwendet RowGen bedingte Auswahl- und Formatierungsparameter. RowGen erhöht die Realitätsnähe der Testdaten durch referenzielle Integrität, Häufigkeitsverteilungen und integrierte Transformations- und Formatierungsfunktionen. So können Sie beispielsweise Daten nach dem Zufallsprinzip auswählen und Bereiche aus Pools echter Daten bzw. gewichteter Zahlen festlegen.