是否可以在SQL Agent中自动执行`EXEC tSQLt.RunAll`?

时间:2018-01-19 19:32:31

标签: sql-server ssms tsqlt

我已经按照tSQLt中的示例进行了操作,并成功为我的SQL Server数据库创建了单元和集成测试。我知道Redgate出售DevOps工具来自动化tSQLt单元和集成测试,但我没有那种钱。

我的成本是按计划运行SQL代理任务。使用命令EXEC tSQLt.RunAll;创建T-SQL作业步骤非常简单。虽然我将SQL Agent配置为在作业步骤失败时向我发送电子邮件,但我不知道Agent在运行{{1}}步骤时是否知道我是否有任何失败的测试并提醒我。

没有什么可以阻止我手动运行这些测试,但我真的很想自动化它们,所以我可以专注于其他事情。

是否有人能够使用SQL Agent执行此操作或获得类似的结果?

1 个答案:

答案 0 :(得分:5)

正如Martin Smith指出的那样,如果任何测试失败或遇到异常,tSQLt会在执行结束时引发错误。任何错误都会被捕获,因此您将始终获得完整的运行。

代理允许您捕获输出,因此您将能够看到失败的内容。