首页 > 解决方案 > TSQLT - 尝试伪造表时出错

问题描述

嗨,我是 TSQLT 单元测试的新手,我在尝试创建假表时遇到错误,感谢任何帮助。

我在一个数据库中有我的开发项目,在另一个数据库中有 TSQLT

EXEC tSQLt.FakeTable @TableName = '[AnotherDB].[dbo].[Table1]'

错误是

[Test].[test that checks the size] failed: (Error) FakeTable could not resolve the object name, '[AnotherDB].[dbo].[Table1]'. (When calling tSQLt.FakeTable, avoid the use of the @SchemaName parameter, as it is deprecated.)[16,10]{Private_ValidateFakeTableParameters,12}

尽管此表确实存在于另一个数据库中,但 select * 将在此表上起作用。我也看过几个帖子,但不清楚该怎么做。

标签: sqlsql-servertsqlt

解决方案


目前还没有本机功能,但是我在实现该功能的tSQLt github 存储库中创建了拉取请求。您可以自己构建项目,也可以使用我的 repo中的 pre-build dacpac 。在那个 dacpac 中,您会找到官方tSQLt对象 + 2 我的功能(伪造同义词和改进的伪造功能的方法)。您可以在此处检查假函数示例

因此,对于您的情况,您需要为该对象创建同义词,然后以与FakeTable表相同的方式模拟它。


推荐阅读