etl testing data warehouse testing tutorial
Processus et défis des tests ETL / Data Warehouse:
Aujourd'hui, permettez-moi de prendre un moment et d'expliquer ma fraternité de test sur l'une des compétences les plus demandées et à venir pour mes amis testeurs, à savoir les tests ETL (Extraire, Transformer et Charger).
Ce tutoriel vous présentera une idée complète des tests ETL et de ce que nous faisons pour tester le processus ETL.
Didacticiels de liste complets de cette série:
- Tutoriel n ° 1 : Guide d'introduction aux tests d'ETL Testing Data Warehouse
- Tutoriel # 2 : Test ETL à l'aide de l'outil Informatica PowerCenter
- Tutoriel # 3 : Test ETL vs DB
- Tutoriel # 4 : Test de Business Intelligence (BI): comment tester les données d'entreprise
- Tutoriel # 5 : Top 10 des outils de test ETL
Il a été observé que la vérification et la validation indépendantes gagnent un énorme potentiel de marché et de nombreuses entreprises y voient maintenant un gain commercial potentiel.
Les clients se sont vu proposer une gamme de produits différente en termes d'offres de services, distribués dans de nombreux domaines en fonction de la technologie, des processus et des solutions. ETL ou entrepôt de données fait partie des offres qui se développent rapidement et avec succès.
Grâce au processus ETL, les données sont extraites des systèmes source, transformées selon les règles métier et finalement chargées dans le système cible (entrepôt de données). Un entrepôt de données est un magasin à l'échelle de l'entreprise qui contient des données intégrées qui facilitent le processus décisionnel de l'entreprise. Cela fait partie de l'intelligence d'affaires.
Ce que vous apprendrez:
- Pourquoi les organisations ont-elles besoin d'un entrepôt de données?
- Processus ETL
- Techniques de test ETL
- Processus de test ETL / Data Warehouse
- Différence entre les tests de base de données et d'entrepôt de données
- Défis des tests ETL
- lecture recommandée
Pourquoi les organisations ont-elles besoin d'un entrepôt de données?
Les organisations ayant des pratiques informatiques organisées ont hâte de créer le prochain niveau de transformation technologique. Ils essaient maintenant de se rendre beaucoup plus opérationnels avec des données faciles à interopérer.
Cela dit, les données sont la partie la plus importante de toute organisation, il peut s'agir de données quotidiennes ou de données historiques. Les données sont l'épine dorsale de tout rapport et les rapports sont la base sur laquelle toutes les décisions de gestion vitales sont prises.
La plupart des entreprises font un pas en avant dans la construction de leur entrepôt de données pour stocker et surveiller les données en temps réel ainsi que les données historiques. Créer un entrepôt de données efficace n'est pas une tâche facile. De nombreuses organisations ont des départements distribués avec différentes applications fonctionnant sur une technologie distribuée.
L'outil ETL est utilisé afin de faire une intégration parfaite entre différentes sources de données de différents départements. L'outil ETL fonctionnera en tant qu'intégrateur, extrayant des données de différentes sources; le transformer dans le format préféré basé sur les règles de transformation métier et le charger dans une base de données cohérente connue sont Data Warehouse.
La portée de test bien planifiée, bien définie et efficace garantit une conversion en douceur du projet à la production. Une entreprise gagne en dynamisme une fois que les processus ETL sont vérifiés et validés par un groupe d'experts indépendant pour s'assurer que l'entrepôt de données est concret et robuste.
Les tests ETL ou Data Warehouse sont classés en quatre engagements différents indépendamment de la technologie ou des outils ETL utilisés:
- Nouveaux tests d'entrepôt de données - Le nouveau DW est construit et vérifié à partir de zéro. L'entrée des données est tirée des exigences des clients et de différentes sources de données et un nouvel entrepôt de données est construit et vérifié à l'aide d'outils ETL.
- Test de migration - Dans ce type de projet, le client aura un DW et un ETL existants pour effectuer le travail, mais ils cherchent à mettre en place un nouvel outil afin d'améliorer l'efficacité.
- Changer de requête - Dans ce type de projet, de nouvelles données sont ajoutées à partir de différentes sources à un DW existant. En outre, il peut y avoir une condition dans laquelle le client doit modifier sa règle métier existante ou il peut intégrer la nouvelle règle.
- Test de rapport - Le rapport est le résultat final de tout Data Warehouse et la proposition de base pour laquelle DW construit. Le rapport doit être testé en validant la mise en page, les données du rapport et le calcul.
Processus ETL
( Remarque : Cliquez sur l'image pour une vue agrandie)
Techniques de test ETL
1) Test de transformation des données : Vérifiez que les données sont correctement transformées en fonction de diverses exigences et règles métier.
2) Test de comptage de la source à la cible : Assurez-vous que le nombre d'enregistrements chargés dans la cible correspond au nombre attendu.
3) Test de données source à cible : Assurez-vous que toutes les données projetées sont chargées dans l'entrepôt de données sans aucune perte de données ni troncature.
4) Test de qualité des données : Assurez-vous que l'application ETL rejette de manière appropriée, remplace par les valeurs par défaut et signale les données non valides.
5) Test de performance : Assurez-vous que les données sont chargées dans l'entrepôt de données dans les délais prescrits et prévus pour confirmer l'amélioration des performances et de l'évolutivité.
6) Test de validation de la production: Validez les données dans le système de production et comparez-les aux données source.
7) Test d'intégration de données : Assurez-vous que les données de diverses sources ont été chargées correctement dans le système cible et que toutes les valeurs de seuil sont vérifiées.
8) Test de migration d'application : Dans ce test, il est garanti que l'application ETL fonctionne correctement lors du passage à une nouvelle boîte ou plate-forme.
9) Vérification des données et des contraintes : Le type de données, la longueur, l'index, les contraintes, etc. sont testés dans ce cas.
10) Vérification des données en double : Testez si des données dupliquées sont présentes dans les systèmes cibles. Les données dupliquées peuvent conduire à des rapports analytiques erronés.
Outre les méthodes de test ETL ci-dessus, d'autres méthodes de test telles que les tests d'intégration de système, les tests d'acceptation des utilisateurs, les tests incrémentiels, les tests de régression, les nouveaux tests et les tests de navigation sont également effectués pour s'assurer que tout est fluide et fiable.
ETL / Entrepôt de données Processus de test
Semblable à tout autre test qui relève de la vérification et de la validation indépendantes, ETL passe également par la même phase.
- Compréhension des exigences
- Valider
- Estimation du test basé sur un certain nombre de tableaux, la complexité des règles, le volume de données et les performances d'un travail.
- Planification des tests sur la base des données d’estimation des tests et des besoins commerciaux. Nous devons identifier ici ce qui est dans la portée et ce qui est hors de la portée. Nous recherchons également les dépendances, les risques et les plans d'atténuation dans cette phase.
- Conception de cas de test et testez des scénarios à partir de toutes les entrées disponibles. Nous devons également concevoir des documents de mappage et des scripts SQL.
- Une fois que tous les cas de test sont prêts et approuvés, l'équipe de test procède à la vérification de pré-exécution et préparation des données de test pour tester
- Enfin, l'exécution est effectuée jusqu'à ce que les critères de sortie soient satisfaits. Ainsi, la phase d'exécution comprend l'exécution des travaux ETL, la surveillance des exécutions de travaux, l'exécution de scripts SQL, la journalisation des défauts, le nouveau test des défauts et les tests de régression.
- Une fois terminé, un rapport de synthèse est préparé et le processus de clôture est terminé. Dans cette phase, une approbation est donnée pour promouvoir le travail ou le code à la phase suivante.
Les deux premières phases, à savoir la compréhension et la validation des exigences, peuvent être considérées comme des étapes préalables au processus de test ETL.
Ainsi, le processus principal peut être représenté comme ci-dessous:
Il est nécessaire de définir une stratégie de test qui devrait être mutuellement acceptée par les parties prenantes avant de commencer les tests réels. Une stratégie de test bien définie garantira qu'une approche correcte a été suivie pour répondre à l'aspiration du test.
Les tests ETL / Data Warehouse peuvent nécessiter l'écriture intensive d'instructions SQL par l'équipe de test ou peut-être personnaliser le SQL fourni par l'équipe de développement. Dans tous les cas, une équipe de test doit être consciente des résultats qu'elle essaie d'obtenir en utilisant ces instructions SQL.
Différence entre les tests de base de données et d'entrepôt de données
Il existe un malentendu populaire selon lequel les tests de bases de données et entrepôt de données est similaire alors que le fait est que les deux ont une direction différente dans les tests.
- Les tests de bases de données sont effectués en utilisant une échelle de données plus petite normalement avec des bases de données de type OLTP (traitement des transactions en ligne), tandis que les tests d'entrepôt de données sont effectués avec un grand volume avec des données impliquant des bases de données OLAP (traitement analytique en ligne).
- Dans les tests de bases de données, les données sont normalement injectées de manière cohérente à partir de sources uniformes, tandis que dans les tests d'entrepôt de données, la plupart des données proviennent de différents types de sources de données qui sont séquentiellement incohérentes.
- Nous effectuons généralement la seule opération CRUD (Créer, lire, mettre à jour et supprimer) dans les tests de base de données, tandis que dans les tests d'entrepôt de données, nous utilisons une opération en lecture seule (Sélectionner).
- Les bases de données normalisées sont utilisées dans les tests de base de données tandis que la base de données démoralisée est utilisée dans les tests d'entrepôt de données.
Il existe un certain nombre de vérifications universelles qui doivent être effectuées pour tout type de test d'entrepôt de données.
Vous trouverez ci-dessous la liste des objets considérés comme essentiels pour la validation dans ce test:
- Vérifiez que la transformation des données de la source à la destination fonctionne comme prévu
- Vérifiez que les données attendues sont ajoutées au système cible
- Vérifiez que tous les champs de base de données et les données de champ sont chargés sans aucune troncature
- Vérifier la somme de contrôle des données pour la correspondance du nombre d'enregistrements
- Vérifiez que pour les données rejetées, des journaux d'erreurs appropriés sont générés avec tous les détails
- Vérifier les champs de valeur NULL
- Vérifiez que les données en double ne sont pas chargées
- Vérifier l'intégrité des données
=> Connaître le différence entre les tests ETL / entrepôt de données et les tests de bases de données .
Défis des tests ETL
Ce test est assez différent des tests conventionnels. Nous sommes confrontés à de nombreux défis lors des tests d'entrepôt de données.
Voici quelques défis que j'ai rencontrés sur mon projet:
- Données incompatibles et dupliquées
- Perte de données pendant le processus ETL
- Indisponibilité du banc d'essai inclusif
- Les testeurs ne disposent d'aucun privilège pour exécuter eux-mêmes des tâches ETL
- Le volume et la complexité des données sont très énormes
- Défaut dans les processus et procédures métier
- Problème d'acquisition et de création des données de test
- Environnement de test instable
- Informations manquantes sur le flux commercial
Les données sont importantes pour que les entreprises prennent les décisions commerciales critiques. Les tests ETL jouent un rôle important dans la validation et la garantie que les informations commerciales sont exactes, cohérentes et fiables. En outre, cela minimise le risque de perte de données en production.
J'espère que ces conseils vous aideront à garantir l'exactitude de votre processus ETL et que l'entrepôt de données ainsi créé constitue un avantage concurrentiel pour votre entreprise.
Liste complète des didacticiels de test ETL:
- Tutoriel n ° 1 : Guide d'introduction aux tests d'ETL Testing Data Warehouse
- Tutoriel # 2 : Test ETL à l'aide de l'outil Informatica PowerCenter
- Tutoriel # 3 : Test ETL vs DB
- Tutoriel # 4 : Test de Business Intelligence (BI): comment tester les données d'entreprise
- Tutoriel # 5 : Top 10 des outils de test ETL
Ceci est un article invité par Vishal Chhaperia qui travaille dans un MNC dans un rôle de gestion de test. Il possède une vaste expérience dans la gestion de projets, de processus et d'équipes d'assurance qualité multi-technologies.
Avez-vous travaillé sur les tests ETL? Veuillez partager vos conseils et défis de test ETL / DW ci-dessous.
lecture recommandée
- Test alpha et test bêta (un guide complet)
- Questions et réponses d'entrevue de test ETL
- Meilleurs outils de test de logiciels 2021 [Outils d'automatisation des tests QA]
- Top 10 des outils de test ETL en 2021
- Build Verification Testing (BVT Testing) Guide complet
- Test fonctionnel vs test non fonctionnel
- Les 4 étapes du test de Business Intelligence (BI): Comment tester les données d'entreprise
- Téléchargement de l'e-book 'Testing Primer'