更新:2007 年 11 月
数据库单元测试由以下几部分组成:
- 一个或多个用 C# 或 Visual Basic 编写的测试条件。要调试测试条件,请按照 如何:在运行测试时进行调试 中所述的过程调试单元测试。 
- 一个或多个 (Transact-SQL) T-SQL 脚本,这些脚本可针对所测试的数据库中的对象运行。不能调试这些 T-SQL 脚本。 
本主题中的过程介绍如何调试特定的数据库对象,如存储过程、函数和触发器。要调试数据库对象,请按顺序执行以下过程:
- 对测试项目启用 SQL Server 调试。 
- 向 T-SQL 脚本中添加断点。 
- 调试数据库单元测试。在该过程中,测试是在调试模式下运行的。 
对测试项目启用 SQL 调试
- 打开“解决方案资源管理器”。 
- 在“解决方案资源管理器”中,右击测试项目,再单击“属性”。 - 将打开一个与测试项目同名的属性页。 
- 在该属性页上单击“调试”。 
- 在“启用调试器”下单击“启用 SQL Server 调试”。 
- 保存更改。 
设置执行上下文超时以便对测试项目启用调试
- 在“文件”菜单上,指向“打开”,再单击“文件”。 
- 浏览至包含测试项目的文件夹,再双击其中的 app.config 文件。 - app.config 文件将在编辑器中打开。 
- 修改 ExecutionContext 节点以添加命令超时,如下面的示例所示: - <ExecutionContext CommandTimeout ="300" Provider="System.Data.SqlClient" ConnectionString="Data Source=TargetServerName\TargetInstanceName;Initial Catalog=TargetDatabaseName;Integrated Security=True;Pooling=False" />
- 保存更改。 
- 重新生成数据库单元测试项目。 
| .gif) 重要说明: | 
|---|
| 如果不重新生成项目,那么,当您运行数据库单元测试时,对 app.config 所做的更改将不会应用,而且调试将失败。 | 
向 T-SQL 脚本中添加断点
- 在“视图”菜单上打开“服务器资源管理器”。 
- 在“数据连接”下,展开与要测试的数据库相对应的节点。 
- 如果该数据库的图标旁边显示一个红色的小“x”,则说明到该数据库的连接已关闭。在这种情况下,右击该数据库,再单击“刷新”。可能必须提供凭据才能打开到该数据库的连接。 
- 展开“视图”、“存储过程”或“函数”节点找到要调试的对象。 
- 双击要调试的对象。 
- 单击灰色侧栏以设置断点。 
调试数据库单元测试
- 打开“测试视图”窗口。 
- 单击 T-SQL 脚本使用设置了断点的数据库对象的测试。 
- 在“测试视图”窗口的工具栏上,单击“调试选定内容”。 - 测试将在调试模式下运行,直到遇到了数据库对象中的断点。 
- (可选)要打开另一个调试窗口,请打开“调试”菜单,指向“窗口”,然后单击“断点”、“输出”或“即时”。