虽然如果你做了很多清理或转换它有一些缺点和潜在的问题,我发现你可以通过从星型模式重新生成输入文件来往返输入文件。然后简单地将输入文件与输出文件进行比较。它可能需要一些按摩来使它们匹配(一个是左边填充,另一个是右边填充)。
通常,我有一个程序使用与ETL相同的布局并进行比较,忽略了字段内的对齐。此外,可能必须对文件进行排序 - 我使用的是命令行排序。
如果您的ETL转换不正确并且您转换不正确,那么此方法仍然可能不会显示DW中的每个问题,并且我不会声称它具有完全覆盖,但它在回归中是一个非常好的第一次重击每个负载的单元测试。
您可以通过在其他地方实施相同数据操作的简化,减少的子集并比较结果来测试事实表加载。
您至少两次计算相同的总数,计数或其他数字。一旦从事实表本身,在它完成加载后,一次从一些 其他 资源:
如果您在数据库中执行此操作,则可以将每个测试编写为查询,如果一切正确则不返回任何记录。返回的任何记录都是例外:x by(y,z)的计数不匹配。
看到这个很棒 岗位 由ConcernedOfTunbridgeWells提供更多建议。