J'essaie de créer des tests raisonnables pour nos processus ETL. Je pense qu'un jeu de données d'ingestion de référence/test est nécessaire. Je ne veux pas utiliser les données client (ce qui est l'autre alternative ici).Ensembles de données de test ETL/Framework
Je lancerais alors l'ETL actuel sur ce jeu de données de test pour obtenir des transformations de référence. Ainsi, lorsque le code source change, nous pouvons tester les références à ce qui est actuellement produit dans l'ETL et nous assurer qu'aucune régression n'a été créée.
Je ne suis pas sûr que ce soit la bonne approche. Par exemple, si une transformation est modifiée dans le code source, les tests qui se comparent à la transformation de référence échoueront à juste titre. Nous devrions créer un nouveau jeu de données de transformation de référence pour cette transformation. Vous pouvez voir cela devenir fou une fois qu'une équipe de développeurs commence à apporter des modifications à des transformations séparées. En fin de compte, j'ai besoin d'un moyen de produire un ensemble de données de test et de tester les transformations. Des idées?
Je produirais votre ensemble de données de test et produirais ensuite un ensemble de tests qui vérifieraient les résultats finaux selon la logique que l'ETL devrait suivre, plutôt que de les comparer à vos résultats finaux ETL actuels. Les tests pourraient être des choses comme des requêtes SQL qui recherchent un résultat spécifique, et pourraient être automatisées. Les tests de ce type nécessitent beaucoup d'engagement et prennent beaucoup de temps: vous devez élaborer les scénarios de données de test et les tests eux-mêmes. Mais cela aide à vérifier que votre ETL fait ce qu'il devrait faire. – Rich