ETL 测试 – 技术

在开始测试过程之前,定义正确的 ETL 测试技术非常重要。您应该获得所有利益相关者的认可,并确保选择正确的技术来执行 ETL 测试。测试团队应该熟知这项技术,他们应该了解测试过程中涉及的步骤。

可以使用各种类型的测试技术。在本章中,我们将简要讨论测试技术。

生产验证测试

要执行分析报告和分析,生产中的数据应该是正确的。此测试是在移动到生产系统的数据上进行的。它涉及生产系统中的数据验证并将其与源数据进行比较。

源到目标计数测试

当测试人员没有太多时间执行测试操作时,会进行这种类型的测试。它涉及检查源系统和目标系统中的数据数量。它不涉及检查目标系统中的数据值。它也不涉及数据映射后是按升序还是降序排列。

源到目标数据测试

在这种类型的测试中,测试人员验证从源到目标系统的数据值。它检查源系统中的数据值和转换后目标系统中的相应值。这种类型的测试非常耗时,通常在金融和银行项目中执行。

数据集成/阈值验证测试

在这种类型的测试中,测试人员验证数据范围。检查目标系统中的所有阈值是否符合预期结果。它还涉及转换和加载后从多个源系统集成目标系统中的数据。

示例 − Age 属性的值不应大于 100。在日期列 DD/MM/YY 中,月份字段的值不应大于 12。

应用程序迁移测试

当您从旧应用程序迁移到新应用程序系统时,应用程序迁移测试通常会自动执行。此测试可节省大量时间。它检查从旧应用程序中提取的数据是否与新应用程序系统中的数据相同。

数据检查和约束测试

它包括执行各种检查,例如数据类型检查、数据长度检查和索引检查。在这里,测试工程师执行以下场景 − 主键、外键、NOT NULL、NULL 和 UNIQUE。

重复数据检查测试

此测试涉及检查目标系统中的重复数据。当目标系统中有大量数据时,生产系统中可能会存在重复数据,从而导致分析报告中的数据不正确。

可以使用 − 之类的 SQL 语句检查重复值

Select Cust_Id, Cust_NAME, Quantity, COUNT (*) 
FROM Customer
GROUP BY Cust_Id, Cust_NAME, Quantity HAVING COUNT (*) >1;

由于以下原因,目标系统中会出现重复数据 −

  • 如果未定义主键,则可能会出现重复值。
  • 由于映射不正确或环境问题。
  • 将数据从源传输到目标系统时出现手动错误。

数据转换测试

数据转换测试不是通过运行单个 SQL 语句来执行的。它非常耗时,并且需要为每一行运行多个 SQL 查询来验证转换规则。测试人员需要对每一行运行 SQL 查询,然后将输出与目标数据进行比较。

数据质量测试

数据质量测试包括执行数字检查、日期检查、空值检查、精度检查等。测试人员执行语法测试以报告无效字符、不正确的大小写顺序等,并执行引用测试以检查数据是否符合数据模型。

增量测试

执行增量测试以验证是否按照预期结果执行了插入和更新语句。此测试使用新旧数据逐步执行。

回归测试

当我们更改数据转换和聚合规则以添加新功能时,这也有助于测试人员发现新错误,这称为回归测试。回归测试中出现的数据错误称为回归。

重新测试

修复代码后运行测试时,这称为重新测试。

系统集成测试

系统集成测试涉及单独测试系统组件,然后集成模块。系统集成有三种方式:自上而下、自下而上和混合。

导航测试

导航测试也称为测试系统的前端。它涉及通过检查前端报告的所有方面(包括各个字段中的数据、计算和汇总等)进行最终用户视角测试。