【问题标题】:tSQLt - About the Stored proc called 'Setup' - that gets automatically executed prior to testtSQLt - 关于名为“Setup”的存储过程 - 在测试之前自动执行
【发布时间】:2018-06-07 06:24:48
【问题描述】:
在 tSQLt 框架中,我们可以在测试类下编写名为“setup”的存储过程,这样可以确保每当测试或测试套件(包含许多测试的类)运行时,“设置”存储过程会先执行,然后再执行测试。
如果我们运行只包含一个测试的测试类,那么很明显设置 SP 将首先执行,然后是测试。但是,假设测试类有 5 个测试,我们使用 RunAll 方法执行它们。在这种情况下,是否会在每次测试之前执行一次设置?或者设置 SP 是否会在整个测试套件中只执行一次。
【问题讨论】:
标签:
sql-server
tsql
tsqlt
【解决方案1】:
来自tSQLt doc:
tSQLt.Run [ [@testName = ] 'test name' ]
1。提供测试类名称会执行该测试类中的所有测试。 如果该测试类中存在 SetUp 存储过程,则在每次测试之前执行它。
RunAll 也一样:
tSQLt.RunAll 执行当前数据库中使用 tSQLt.NewTestClass 创建的所有测试类中的所有测试。 如果测试类架构包含一个名为 SetUp 的存储过程,它会在调用每个测试用例之前执行