创建和定义 SQL Server 单元测试

 

您可以运行 SQL Server 单元测试,以验证对架构中的一个或多个数据库对象进行的更改是否已对数据库应用程序中的现有功能产生了影响。这些测试是对软件开发人员创建的单元测试的补充。您必须运行这两种测试来验证应用程序的行为。

您可以通过添加 SQL Server 单元测试和添加 Transact-SQL 脚本以测试该对象来验证架构中任何对象的行为。此外,如果您要验证特定函数、触发器或存储过程的行为,还可以自动生成 Transact-SQL 脚本的存根。在生成存根后,必须自定义它才能获得有意义的结果。

备注

您可以创建一个空测试,向其中添加代码,然后运行它,而无需打开 SQL Server 数据库项目。不过,如果没有打开包含要测试的对象的项目,则无法自动生成测试函数、触发器或存储过程的 Transact-SQL 存根。

常见任务

在下表中,可以找到支持此方案的常规任务的说明,以及指向有关如何成功完成这些任务的详细信息的链接。

常见任务

支持内容

进行动手实践:您可以按照介绍性演练来熟悉如何创建和运行简单的 SQL Server 单元测试。

了解有关 SQL Server 单元测试的详细信息:您可以了解有关构成 SQL Server 单元测试的文件和脚本的详细信息。您还可以了解如何在单元测试中使用测试条件和 Transact-SQL 断言。

创建一个或多个测试项目:您必须在测试项目中创建 SQL Server 单元测试。如果您在创建测试项目前使用 SQL Server 对象资源管理器创建了 SQL Server 单元测试,将为您创建一个测试项目。例如,如果您要在不同的测试组中使用不同的数据生成计划或不同的部署配置,可以创建多个测试项目。在创建测试项目时,您可以配置用于该项目的测试设置(例如连接字符串)、部署设置和数据生成计划。

配置单元测试的运行方式:您可以指定被测数据库的连接字符串、数据生成计划和部署设置。在您首次将 SQL Server 单元测试添加到项目时配置这些设置,但是以后还可以修改它们。

创建 SQL Server 单元测试:您可以为验证函数、触发器或存储过程行为的 Transact-SQL 单元测试自动创建 SQL Server 代码存根。您还可以创建空 SQL Server 单元测试,然后添加 Transact-SQL 代码以测试其他类型的数据库对象。

为 SQL Server 单元测试编写代码:在创建单元测试后,需要修改或编写 Transact-SQL 代码来测试数据库对象。对于每个测试,需要定义一个或多个用于确定测试成功与否的测试条件。对于较复杂的测试,可以修改数据库项目中的 Visual Basic 或 Visual C# 代码。例如,可以编写在单个事务范围内运行的单元测试。

解决问题:您可以了解有关如何解决 SQL Server 的常见问题的详细信息。

相关方案

请参阅

使用 SQL Server 单元测试验证数据库代码