【发布时间】:2011-04-04 03:18:09
【问题描述】:
只是想弄清楚其他人使用什么来测试他们的数据库过程/查询等。您是否使用新的 Visual Studio 扩展、自定义代码等?我需要一些如何制定一些单元测试,但不太确定我将如何构建测试,以便我们可以轻松地对程序进行回归测试。
【问题讨论】:
标签: sql-server sql-server-2005 unit-testing sql-server-2008 stored-procedures
只是想弄清楚其他人使用什么来测试他们的数据库过程/查询等。您是否使用新的 Visual Studio 扩展、自定义代码等?我需要一些如何制定一些单元测试,但不太确定我将如何构建测试,以便我们可以轻松地对程序进行回归测试。
【问题讨论】:
标签: sql-server sql-server-2005 unit-testing sql-server-2008 stored-procedures
您有很多选择 - 正如您已经提到的那样 - 但对于真正的单元测试,您总是希望尽可能接近实际的测试单元,以避免让集成问题干扰您的测试。对于数据库对象,这意味着使用 Visual Studio 数据库单元测试项目并编写 SQL 来对数据库对象进行单元测试,或者使用某种基于 SQL 的第 3 方测试框架,例如 DBUnit。
在某些情况下,您可能希望使用 Linq-to-SQL 比在 SQL 中更简洁/更容易地执行某些数据库单元测试,但除非对于真正的单元测试绝对必要,否则应避免这样做; Linq-to-SQL(和任何其他自定义代码)引入了集成问题和额外的层,因此如果您遇到错误,您首先必须确保它确实是您的数据库中的错误,而不是您的 Linq-to- SQL数据库连接、C#代码(例如)等
【讨论】:
DbFit 取得了很大的成功
【讨论】:
TST the T-SQL Test Tool,效果很好,很容易实现。
【讨论】:
这是个大问题。我们在 2007 年开发了自己的库,described here。去年秋天我写了关于lessons learned during more than three years of using it。
【讨论】: