gpt4 book ai didi

tsql - 代码复用 tsqlt/sql 测试

转载 作者:行者123 更新时间:2023-12-01 01:03:25 26 4
gpt4 key购买 nike

我刚开始使用tsqlt在redgate的sql测试里面。我必须处理遗留数据库中相当大的表(大量列)。将一些假数据插入此类表的最佳做法是什么(“脚本作为”插入语句非常大) - 因此它们会使我的单元测试的“安排部分”字面上不可读。我可以分解出这样的代码吗?还有一种方法不仅可以编写插入语句的脚本,还可以自动填充一些值?谢谢。

最佳答案

我同意您的评论,即您不需要填写插入语句中的所有列。

tSQLt.FakeTable 从列以及计算列和标识列中删除所有非空约束(尽管可以使用 FakeTable 的特定参数恢复最后两个)。

因此,您只需要填充与被测代码相关的列,这通常只是表中列的较小子集。

我在 this article 中对此进行了更详细的描述。其中还包含您可能想知道的其他一些“陷阱”。

此外,我建议如果您有许多测试都需要伪造同一个表并插入数据,那么您可以考虑使用 SetUp 例程 - 这是测试类(模式)中的一个存储过程,称为 SetUp,并在该模式中的每个测试之前由 tSQLt 调用。它们还不会显示在 RedGate 的 SQL 测试窗口中(我建议将其作为改进),但仍然可以使用。这可能会使它更难看到 - 但确实模块化了该代码,从而减少了相同的重复代码。

关于tsql - 代码复用 tsqlt/sql 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21047451/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com