65.9K
CodeProject 正在变化。 阅读更多。
Home

为数据库对象自动生成单元测试 - Visual Studio 2019 & 2022 (amd64) 扩展

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.90/5 (5投票s)

2023年1月4日

CPOL

4分钟阅读

viewsIcon

11763

downloadIcon

9

与 Autogenerate DB Unit Test 应用程序相关的特性和功能。

目录

引言

本文档提供了自动生成数据库单元测试 (ADUT) 应用程序用户可用的功能的详细概述。它描述了为相应的数据库对象自动生成单元测试所涉及的流程和操作。

  1. 存储过程 (包括多输出)
  2. 内联函数
  3. 标量函数
  4. 视图
  5. 计算字段

下载 Visual Studio 2019 扩展

或者

下载 Visual Studio 2022 扩展

下载后,双击进行安装 (关闭所有可能打开的 Visual Studio 实例)。安装完成后,下次打开 Visual Studio 时,该扩展将已安装并准备就绪。

目的

用户指南提供了使用新的ADUT 应用程序的全面分步指南。旨在传达终端用户可用的重要功能。

范围

本文档的范围是方便地传达ADUT 解析应用程序的功能。

启动自动生成数据库单元测试扩展

在您的 Visual Studio IDE 中,选择 **Extensions → Database Unit test Generator → Configuration Panel** 菜单选项,打开配置面板。

数据库设置对话框

在此,用户将输入要生成单元测试的目标 (暂存) 数据库的连接字符串。用户可以在控制面板中测试其连接字符串。

选择数据库类型、测试框架和首选编程语言。

注意:如果任何存储过程需要输出多个数据集,则连接字符串属性必须添加 MultipleActiveResultSets=True (参见上面的连接字符串)。

连接字符串凭据必须与数据库内的 View Definition 组相关联,以便应用程序可以从其架构重构数据库对象。

还可以选择将 SQL 脚本与与类和/或单独单元测试方法关联的单元测试的 InitializeTeardown 方法相关联。

Load 选项允许用户检索先前保存的控制面板设置 (项目可以在生成单元测试对话框阶段保存)。

用户点击 Connect 按钮后,将解析数据库架构,并显示相应的数据库对象供用户选择。

数据库对象对话框

在这里,用户可以选择为所有可用的数据库对象创建单元测试,或者选择性地选择要生成单元测试的特定对象集。

底部的复选框用于任何数据库表内的 Computed fields,这将为每张表的每个计算字段生成一个测试。

通过点击 Generate Unit Tests 按钮,将自动生成测试并在编辑器窗口中显示。

多个数据库架构对象

该应用程序将识别连接字符串可访问的不同架构,因此您可以使用单元测试来定位数据库的特定方面。

单元测试编辑器窗口

在此,用户可以将完整的生成的单元测试类复制到剪贴板,或者突出显示特定单元测试并复制。

注意:该应用程序将生成要传递到存储过程的虚拟值,用户必须重新配置为使单元测试正常工作需要传递的实际值,然后在执行 *断言* 时。

用户可以导航回并重新选择要生成单元测试的数据库对象。测试可以简单地复制到单元测试类项目中,然后可以使用测试资源管理器执行。

Visual Studio 测试资源管理器

下面,您可以看到从自动生成数据库编辑器窗口复制到 C# MSTest 类的单元测试。

注意:对于 Visual Studio 2022,您需要为您要编译的 MSTest 项目添加 System.Data.Sqlclient NuGet 包。

使用测试资源管理器,用户可以验证其测试是否按预期工作,然后将单元测试项目签入其代码存储库,然后可以对其进行持续集成管道的执行。

保存项目

点击 Save 按钮将提示用户选择一个目标文件夹来保存项目文件 (可以稍后加载)。

保存的项目文件示例

下面,您可以看到从应用程序保存的属性,用户可以再次导入这些控制面板设置,当他们想要针对数据库重新生成测试时。

历史

  • 2022 年 12 月 26 日:初始版本
© . All rights reserved.