【发布时间】:2014-07-23 09:46:15
【问题描述】:
是否可以忽略在 tSQLt AssertEqualsTable 中几乎肯定会有所不同的某些列?例如两个结果表中的主键、插入/更新日期戳等等。
我一直在通过仅将相关列选择到新的临时表中并进行比较来解决此问题,但这意味着额外的工作和额外的出错位置。肯定不是很多,但它加起来有几十或几百个测试。
一种内置或简单的方式来表示“比较这两个表但忽略列 X 和 Y”将非常有用。有没有比我现在使用的更好的解决方案?
【问题讨论】:
-
我一直在想同样的事情。我的解决方案是将被测存储过程的结果转储到临时表中,然后删除我对测试不感兴趣的列:
EXEC usp_UpdateUserTable Param1, Param2SELECT * INTO #actual FROM Users`ALTER TABLE #actual DROP COLUMN [LastUpdated] -
如果您提供一个您遇到问题的测试示例,它可能会有所帮助。我无法从问题中看出您在 TDD 和单元测试方面的经验或您对 tSQLt 的了解程度。
标签: tsqlt