自动SQL Server单元测试

Nix*_*Nix 6 testing automated-tests ssis sql-server-2008

我知道有一些方法可以自动执行SQL Server"单元测试".但我的问题略有不同.

在验证需求时,我们编写了一系列SQL脚本,如果成功,基本上不返回任何内容.

所以基本上它就像

  1. 执行查询
  2. 执行另一个查询
  3. 运行SSIS包
  4. 运行查询.

以及更多上下文的示例

要求#1描述:显示我的问题

  1. 查询以检查目标表是否存在且为空
  2. 查询以检查源表是否存在并且是否有数据
  3. 运行ETL SSIS包
  4. 查询检查数据是否正确传输
  5. 查询以断言业务规则

我们已经找到了一种方法来自动化这个过程,方法是编写一个自定义程序来解析执行SQL查询,加载必要的数据,运行SSIS包等,然后报告我们是否有结果(显示测试失败).

这似乎是一个轮子重新发明...但我找不到任何类似的东西.特别是与SSIS集成的产品.

编辑:

有人提出了SSISunit,并且几乎没有文档.如果我们使用SSIS单元,更像是设置过程会声称存在所需的条件,上面的步骤1和2?我一直以为安装过程不进行验证?

Nix*_*Nix 0

经过大约一个月的研究,没有任何 OTS 程序可以解决这个问题。

我们正在寻找一个工具集,允许您定义如何验证需求。在我们的例子中,我们需要一个通用例程来执行 SQL 脚本、加载数据和运行 SSIS 包,目前唯一的方法是编写自己的编排工具。

我们使用 .NET 进行编排,但 @Sam 确实提供了一种使用 SSIS 进行编排的有用方法。感谢 @JasonHorner 的建议,我们现在正在考虑使其看起来和感觉更像 SSISUnit,但在更有组织的层面上。