如何在sql server中单元测试sprocs?

时间:2016-08-23 18:32:04

标签: sql-server unit-testing tsql

我在ss2012中有一些sprocs,我想对它们进行单元测试。我以前没有经过单元测试的sprocs。基于一个快速的谷歌,似乎我应该能够右键单击一个sproc并从上下文菜单中选择“创建单元测试”。但是,此选项在我的SSMS实例中不可用。是否在SSMS 2012中本机支持sproc单元测试,还是需要下载和安装某些类型的附加软件?

3 个答案:

答案 0 :(得分:2)

这在SSDT数据库项目中可用。

我不确定Visual Studio版本的确切要求是什么,但是当我右键单击VS2015 Community Edition中打开的数据库项目中的存储过程时,我会看到“创建单元测试”选项。

它创建了一个测试项目,您可以在其中配置测试as outlined here

答案 1 :(得分:0)

您需要使用tSQLt框架(在幕后它只是数据库中创建的一些表和存储过程),这是我所知道的唯一SQL Server单元测试框架。

您在Google中看到的内容可能由Red Gate SQL Test完成。

事实上,您不必使用它,它只是一个允许您以更简单的方式在tSQLt框架中执行SQLCop单元测试的GUI。

通过调用实际的tSQLt过程,您可以毫无问题地执行它们。

答案 2 :(得分:0)

tSQLt是最好的框架。它功能强大,支持良好且开源。官方网站上有a good tutorial可以帮助您入门。

如果您碰巧拥有Redgate SQL Toolbelt许可证,您将可以访问SQL Test,从而提供更深入的SSMS集成。这本质上是一个tSQLt运行器,可以更容易地安装框架并运行测试,但不要求使用tSQLt。

如果您没有SQL Test但需要下载SQL Cop测试,则可以使用this documentation page底部的链接进行下载。 SQL Cop测试不是严格的单元测试。它们更多的是检查最佳实践。