data warehouse testing tutorial with examples etl testing guide
Dieses Tutorial behandelt die Ziele und die Bedeutung von Data Warehouse-Tests, Verantwortlichkeiten für ETL-Tests, Fehler in der DW- und ETL-Bereitstellung im Detail:
In diesem Ausführliche Data Warehouse-Schulungsreihe Wir haben uns das angeschaut Was ist ET? L Prozess im Data Warehouse in Details in unserem vorherigen Tutorial.
In diesem Lernprogramm erfahren Sie, wie Data Warehouse-Tests in einer Organisation durchgeführt werden können. Außerdem erfahren Sie ausführlich über die Ziele des DW-Testens, wie und welche Art von Test im Backend durchgeführt werden kann, die alle an diesem Prozess beteiligt sind, über DW-Fehler und die ETL-Bereitstellung.
=> Überprüfen Sie ALLE Data Warehousing-Tutorials hier.
Zielgruppe
- Entwickler und Tester von Data Warehouse / ETL.
- Datenbankprofis mit Grundkenntnissen in Datenbankkonzepten.
- Datenbankadministratoren / Big Data-Experten, die Data Warehouse / ETL-Konzepte verstehen möchten.
- Hochschulabsolventen / Studienanfänger, die nach Data Warehouse-Jobs suchen.
Was du lernen wirst:
Testen von Data Warehouse (ETL)
Welche Bedeutung hat das Testen von Data Warehouse- und Business Intelligence-Systemen?
Das Testen spielt eine entscheidende Rolle für den Erfolg eines der beiden oben genannten Systeme, indem es die Richtigkeit der Daten sicherstellt, die das Vertrauen der Endbenutzer stärken.
Im Allgemeinen kostet ein Fehler, der in späteren Phasen des Softwareentwicklungslebenszyklus festgestellt wird, mehr, um diesen Fehler zu beheben. Diese Situation in der DW kann sich verschlechtern, da die zu einem späteren Zeitpunkt gefundenen falschen Daten zu diesem Zeitpunkt möglicherweise für wichtige Geschäftsentscheidungen verwendet wurden.
Daher ist die Korrektur in der DW in Bezug auf Prozess-, Personen- und Technologieänderungen teurer. Sie können den DW-Test direkt ab der Phase der Anforderungserfassung starten.
Eine Anforderungsrückverfolgbarkeitsmatrix wird erstellt und überprüft, die hauptsächlich die DW-Funktionen mit ihren jeweiligen Geschäftsanforderungen abbildet. Die Rückverfolgbarkeitsmatrix dient als Eingabe für den DW-Testplan, der von den Testern erstellt wird. Der Testplan beschreibt die Tests, die zur Validierung des DW-Systems durchgeführt werden müssen.
Außerdem werden die Arten von Tests beschrieben, die auf dem System durchgeführt werden. Nachdem der Testplan fertig ist, werden alle detaillierten Testfälle für verschiedene DW-Szenarien vorbereitet. Dann werden alle Testfälle ausgeführt und Fehler protokolliert.
In der Betriebswelt gibt es einen Standard, der unterschiedliche Umgebungen für Entwicklung, Test und Produktion verwaltet. In der DW-Welt stellen sowohl die Entwickler als auch die Tester sicher, dass die Entwicklungs- und Testumgebungen mit dem Replikat der Produktionsdaten verfügbar sind, bevor sie mit ihrer Arbeit beginnen.
Dies wird für eine Liste von Tabellen mit begrenzten oder vollständigen Daten kopiert, je nach Projektanforderungen, da die Produktionsdaten sehr groß sind. Die Entwickler entwickeln ihren Code in der Entwicklerumgebung und liefern ihn an die Tester.
Die Tester testen den in den Testumgebungen gelieferten Code, um sicherzustellen, dass alle Systeme funktionieren. Dann wird der Code in den Produktionsumgebungen live geschaltet. Der DW-Code wird auch in verschiedenen Versionen verwaltet, basierend auf den in jeder Version behobenen Fehlern. Das Verwalten mehrerer Umgebungen und Codeversionen hilft beim Aufbau eines Systems von guter Qualität.
Äquivalenzpartitionierung und Randwertanalyse
ETL-Tests (Goals of Data Warehouse)
Werfen wir einen Blick auf die Ziele des Data Warehouse-Testens.
# 1) Vollständigkeit der Daten: Stellen Sie sicher, dass alle Daten aus verschiedenen Quellen in ein Data Warehouse geladen werden. Das Testteam überprüft anhand der folgenden Beispielstrategien, ob alle DW-Datensätze für die Quelldatenbank und die Flatfiles geladen sind.
- Die Gesamtzahl der vom Quellsystem hochgeladenen Datensätze sollte mit der Gesamtzahl der in DW geladenen Datensätze übereinstimmen. Wenn es einen Unterschied gibt, können Sie über die abgelehnten Datensätze nachdenken.
- Vergleichen Sie die in jedes DW-Feld geladenen Daten mit den Datenfeldern des Quellsystems. Dadurch werden etwaige Datenfehler angezeigt.
# 2) Datentransformation: Beim Hochladen der Quelldaten in das Data Warehouse können nur wenige Felder direkt mit den Quelldaten geladen werden, aber nur wenige Felder werden mit den Daten geladen, die gemäß der Geschäftslogik transformiert werden. Dies ist der komplexe Teil des Testens von DW (ETL).
Nachfolgend finden Sie die Beispielstrategien, um dies zu testen:
- Sie können testen, indem Sie Daten in Tabellenkalkulationen erstellen und vergleichen. Laden Sie die quelltransformierten Daten und DW-Daten in Tabellenkalkulationen und führen Sie einen Vergleich durch. Es sollte keine Nichtübereinstimmung geben.
- Tester sollten die Abfragen gemäß der Transformationslogik schreiben, um die DW-Daten mit den Quelldaten zu vergleichen. Die Ausführung der Abfrage garantiert, dass die Datenüberprüfung für eines der Felder nicht fehlt.
# 3) Datenqualität: Das Data Warehouse (ETL) -System muss die Qualität der darin geladenen Daten sicherstellen, indem es die Daten ablehnt (oder korrigiert).
DW kann ablehnen Einige der Quellsystemdaten basieren auf der Geschäftsanforderungslogik. Zum Beispiel, Einen Datensatz ablehnen, wenn ein bestimmtes Feld nicht numerische Daten enthält. Alle abgelehnten Datensätze werden als Referenz in die Zurückweisungstabelle geladen.
Die abgelehnten Daten werden an die Clients gemeldet, da keine Möglichkeit besteht, diese fehlenden Daten kennenzulernen, da sie nicht in das DW-System geladen werden. DW kann richtig die Daten durch Laden von Null anstelle von Nullwerten usw.
# 4) Skalierbarkeit und Leistung: Data Warehouse muss die Skalierbarkeit des Systems mit zunehmender Auslastung sicherstellen. Damit sollte die Leistung während der Ausführung der Abfragen nicht beeinträchtigt werden, mit erwarteten Ergebnissen in bestimmten Zeitrahmen. Somit decken Leistungstests alle Probleme auf und beheben sie vor der Produktion.
Nachfolgend finden Sie Beispielstrategien für Leistungs- und Skalierbarkeitstests:
- Führen Sie die Leistungstests durch, indem Sie Produktionsdatenmengen laden, und stellen Sie sicher, dass die Zeitrahmen nicht übersehen werden.
- Überprüfen Sie die Leistung jeder Abfrage mit Massendaten. Testen Sie die Leistung mithilfe einfacher Verknüpfungen und mehrerer Verknüpfungen.
- Laden Sie das Doppelte (oder Dreifache) in das Datenvolumen, von dem erwartet wird, dass es die Kapazität des Systems ungefähr berechnet.
- Testen Sie, indem Sie Jobs für alle aufgelisteten Berichte gleichzeitig ausführen.
# 5) Integrationstests: Data Warehouse sollte Integrationstests mit anderen vor- und nachgelagerten Anwendungen durchführen. Wenn möglich, ist es besser, die Produktionsdaten für Integrationstests in die Testumgebung zu kopieren.
Alle Systemteams sollten in diese Phase einbezogen werden, um die Lücken zu schließen und gleichzeitig alle Systeme zu verstehen und zu testen.
# 6) Unit Testing: Dies wird von den einzelnen Entwicklern für ihre Ergebnisse durchgeführt. Entwickler erstellen Unit-Test-Szenarien basierend auf ihrem Verständnis der Anforderungen, führen die Unit-Tests durch und dokumentieren die Ergebnisse. Dies hilft den Entwicklern, etwaige Fehler zu beheben, bevor sie den Code an das Testteam senden.
# 7) Regressionstests: Überprüft, ob das DW-System nach Behebung von Fehlern nicht fehlerhaft funktioniert. Dies wird bei jeder neuen Codeänderung mehrmals durchgeführt.
# 8) Benutzerakzeptanztests: Diese Tests werden von Geschäftsbenutzern durchgeführt, um die Systemfunktionalität zu überprüfen. Die UAT-Umgebung unterscheidet sich von der QS-Umgebung. Die Abmeldung von UAT impliziert, dass wir bereit sind, den Code in die Produktion zu verschieben.
doppelt verknüpfte Liste c ++ einfügen
Aus Sicht des Data Warehouse- und Business Intelligence-Systems können Geschäftsbenutzer verschiedene Berichte über eine Benutzeroberfläche validieren. Sie können die Berichtsspezifikationen anhand der Anforderungen überprüfen, die Richtigkeit der Daten in den Berichten überprüfen, überprüfen, wie schnell das System die Ergebnisse zurückgibt usw.
DW-Testflussdiagramm:
Verantwortlichkeiten für Data Warehouse-Tests
Nachfolgend sind die verschiedenen Teams aufgeführt, die an der Bereitstellung eines erfolgreichen DW-Systems beteiligt sind:
- Business Analysten: Sammeln Sie alle Geschäftsanforderungen für das System und dokumentieren Sie diese für alle Vorlieben.
- Infrastruktur-Team: Richten Sie je nach Bedarf verschiedene Umgebungen für Entwickler und Tester ein.
- Entwickler: Entwickeln Sie den ETL-Code gemäß den Anforderungen und führen Sie Unit-Tests durch.
- QS (Qualitätssicherung) / Tester: Entwickeln Sie einen Testplan, Testfälle usw. Identifiziert Fehler im System durch Ausführen der Testfälle. Führen Sie verschiedene Teststufen durch.
- Datenbankadministratoren: Datenbankadministratoren übernehmen die Konvertierung logischer ETL-Datenbankszenarien in physische ETL-Datenbankszenarien und sind auch an Leistungstests beteiligt.
- Geschäftsanwender: Nehmen Sie an Benutzerakzeptanztests teil, führen Sie Abfragen und Berichte für DW-Tabellen aus.
Fehler im Data Warehouse
Wenn Sie ETL-Daten (Extrahieren, Transformieren und Laden) aus mehreren Quellen extrahieren, besteht die Möglichkeit, dass Sie schlechte Daten erhalten, die die lang laufenden Jobs abbrechen können.
Im Folgenden sind die Hauptfehlerursachen im DW-System aufgeführt:
# 1) Verstöße gegen Geschäftsregeln (logische Fehler): Logisch falsche Daten verstoßen gegen die Geschäftsregeln. Solche Daten können meist während der Transformations- oder Ladephase verarbeitet werden.
# 2) Verstöße gegen Datenregeln (Datenfehler): Datenfehler treten innerhalb des DW-Datenbanksystems auf, z. B. Datentypinkongruenzen, Datenbeschränkungsfehler usw.
ETL-Bereitstellung
Dies ist die Phase, in der alle Ihre Bemühungen live gehen. Alle Produktionsunterstützungsdokumente sollten vorbereitet werden.
In der Dokumentation werden andere über die Reihenfolge der auszuführenden Jobs, Fehlerbehebungsszenarien und Schulungsmaterialien für die DW-Supportteams zur Überwachung des Systems nach der Bereitstellung und für das administrative Supportteam zur Ausführung der Berichte informiert.
Fazit
In diesem Lernprogramm haben wir die Ziele des Data Warehouse-Testens, die Verantwortlichkeiten für ETL-Tests, Fehler in der DW- und ETL-Bereitstellung ausführlich kennengelernt.
Wir hoffen, Sie haben eine Vorstellung davon, wie detaillierte Tests in einem Data Warehouse (ETL) -System durchgeführt werden können.
=> Besuchen Sie hier, um Data Warehousing von Grund auf neu zu lernen.
Literatur-Empfehlungen
- Tutorial zum Testen von ETL-Data Warehouse-Tests (Eine vollständige Anleitung)
- Tutorial zum Volumentest: Beispiele und Tools zum Volumentest
- Fragen und Antworten zum ETL-Testinterview
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Funktionstests gegen nichtfunktionale Tests
- Tutorial zum paarweisen Testen oder Testen aller Paare mit Tools und Beispielen
- Top 10 ETL-Testwerkzeuge im Jahr 2021
- So führen Sie datengesteuerte Tests in SoapUI Pro durch - SoapUI Tutorial Nr. 14