HOME> 英格兰世界杯冠军> 调试数据库对象 - SQL Server Data Tools (SSDT)

调试数据库对象 - SQL Server Data Tools (SSDT)

英格兰世界杯冠军 2026-06-18 10:09:31
SQL Server 单元测试包括: 用 C# 或 Visual Basic 编写的单元测试代码。 此代码由 SQL Server 单元测试设计器生成,负责提交构成测试正文的 Transact-SQL ...

SQL Server 单元测试包括:

用 C# 或 Visual Basic 编写的单元测试代码。 此代码由 SQL Server 单元测试设计器生成,负责提交构成测试正文的 Transact-SQL 脚本。

用 C# 或 Visual Basic 编写的一个或多个测试条件。 若要调试测试条件,请按照《如何:测试运行时进行调试(Visual Studio 2010)》或《如何:测试运行时进行调试(Visual Studio 2012)》中所述的调试单元测试的过程进行操作。

在要测试的数据库中的对象上运行的一个或多个 Transact-SQL 脚本。 无法调试这些 Transact-SQL 脚本。

本文中的过程介绍如何调试特定数据库对象,例如要测试的数据库中的存储过程、函数和触发器。 若要调试数据库对象,请按以下顺序执行以下过程:

在测试项目上启用 SQL Server 调试。

在托管要测试的数据库的 SQL Server 实例上启用应用程序调试。

在要调试的数据库对象的 Transact-SQL 脚本中设置断点。

调试单元测试。 在此过程中,在调试模式下运行测试。

在测试项目上启用 SQL 调试

打开 解决方案资源管理器。

在 解决方案资源管理器中,右键单击测试项目,然后选择 “属性”。

一个与测试项目同名的属性页打开了。

在属性页上,选择“ 调试”。

在 “启用调试器”下,选择“ 启用 SQL Server 调试”。

保存更改。

设置增加的执行上下文超时,以便为测试项目启用调试

在 “文件 ”菜单上,指向 “打开”,然后选择“ 文件”。

浏览到包含测试项目的文件夹,然后双击 app.config 该文件。

该文件 app.config 将在编辑器中打开。

修改ExecutionContext节点以添加一个命令超时,如以下示例所示:

CommandTimeout ="300" Provider="System.Data.SqlClient"

ConnectionString="Data Source=TargetServerName\TargetInstanceName;Initial Catalog=TargetDatabaseName;Integrated Security=True;Pooling=False" />

保存更改。

重新生成单元测试项目。

重要

如果不重新生成项目,则运行单元测试时不会应用对 app.config 所做更改,调试失败。

将断点添加到 Transact-SQL 脚本

在 “视图 ”菜单上,打开 SQL Server 对象资源管理器。

在 “数据连接”下,展开要测试的数据库节点。

如果数据库图标旁边显示一个小红色的“x”,则与数据库的连接将关闭。 在这种情况下,右键单击数据库,然后选择“ 刷新”。 可能需要提供凭据才能打开与数据库的连接。

展开 “视图”、“ 存储过程”或 “函数 ”节点以查找要调试的对象。

双击要调试的对象。

选择灰色边栏以设置断点。

调试 SQL Server 单元测试

Visual Studio 2010,打开“测试>Windows” 测试视图 窗口。 在 Visual Studio 2012 中,打开 “测试资源管理器” 窗口。

右键单击包含用于操作数据库对象的 Transact-SQL 脚本的测试项目,在其中设置断点,然后选择 “调试选择”。

测试在调试模式下运行,直到遇到数据库对象中的断点。

(可选)若要打开另一个调试窗口,请打开 “调试 ”菜单,指向 Windows,然后选择“ 断点”、“ 输出”或“ 即时”。

相关内容

运行 SQL Server 单元测试

调试 Transact-SQL (Visual Studio 2010)