创建和定义数据库单元测试

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

可以通过在 Visual Basic 或 Visual C# 中创建空测试并添加自定义代码,来验证架构中任何对象的行为。 作为一种备选方法,如果您要验证特定函数、触发器或存储过程的行为,则可以自动生成 Transact-SQL 脚本的存根。 在生成存根后,您必须对其进行自定义,以获取有意义的结果。

提示

您可以在不打开数据库项目的情况下创建空测试、向其中添加代码并运行该测试。 然而,如果不打开包含您要测试的对象的项目,则无法自动生成用于测试函数、触发器或存储过程的 Transact-SQL 存根。

常规任务

下表列出了支持此方案的常规任务的说明,还提供了一些链接,这些链接指向有关如何成功完成这些任务的更多信息。

常规任务

支持内容

进行动手练习:可以按照介绍性演练操作,熟悉如何创建和运行简单的数据库单元测试。

了解有关数据库单元测试的更多信息:您可以了解有关组成数据库单元测试的文件和脚本的更多信息。 还可以了解如何在单元测试中使用测试条件和 Transact-SQL 断言。

创建一个或多个测试项目:您必须在测试项目中创建数据库单元测试。 如果在创建测试项目之前创建数据库单元测试,则会为您创建一个测试项目。 有时可以先创建测试项目,例如在您需要在不同的测试组中使用不同的数据生成计划或不同的部署配置时。 在创建测试项目时,可以配置用于该项目的测试设置(如连接字符串)、部署设置和数据生成计划。

配置如何运行单元测试:您可以指定对其运行测试的数据库的连接字符串、数据生成计划和部署设置。 在创建测试项目时先配置这些设置,但是也可在以后进行修改。

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

为数据库单元测试编写代码:创建单元测试之后,可编写 Transact-SQL 代码测试数据库对象。 对于每个测试,可定义一个或多个测试条件,作为判断测试通过或失败的依据。 对于更加复杂的测试,可以修改数据库项目中的 Visual Basic 或 Visual C# 代码。 例如,可以编写在单个事务范围内运行的单元测试。

疑难解答:您可以了解有关如何解决数据库单元测试常见问题的更多信息。

相关方案