在ETL项目中进行自动化端到端测试的最佳方法是什么?

问题描述

我们有一个ETL项目,其中来自一个UI应用程序的数据在一系列应用程序(转换/逻辑)中向下流动。

总体座右铭是在“ UI 2”中查看“ UI 1”的数据。 “ Spring Java Server 1”调用UI1 Server的API,数据流入不同的服务器并保存在数据库中。脚本还可以将某些数据保留在数据库中。 “带有后端服务器的UI 2”从数据库获取数据并将其显示在UI中。

enter image description here

现在是问题, 我正在寻找执行端到端测试的最佳方法。 我们将从触发“ Spring Java Server 1”开始,该“ Spring Java Server 1”调用“带有BackendServer 1的UI 1”的API,最后使用硒查看“ UI 2”中的数据。

我正在考虑使用UI创建一个单独的Java应用程序,仅用于测试以触发“服务器1”并使用硒验证UI2 但是问题出在脚本上。在数据库之后,我们必须手动运行脚本,然后等待它完成。我们如何使用某种状态管理来自动化手动运行脚本?

请对E2E的体系结构提出更多建议,或者如何增强E2E设置。以及我可以使用哪些工具/框架。

解决方法

关于自动执行脚本,请查看PowerShell。它是用于自动执行重复且耗时的任务(例如自动执行脚本而不是手动执行脚本)的强大工具。您还创建一个自定义PowerShell脚本,该脚本连接到SQL Server以运行命令。如果您正在寻找ETL自动化工具来跟踪源中的数据(通过ETL处理直到将其加载到目标中),则需要评估很多选项,以查看哪种方法最适合您。查看dbt,RightData,QuerySurge,Datagaps ETL验证程序,SSISTester,TestBench,DbFit或AnyDbTest。