目录
介绍
本文档详细概述了自动生成的数据库单元测试 (ADUT)应用程序中可供用户使用的功能。它描述了为各自的数据库对象自动生成单元测试所涉及的过程和操作:
- 存储过程(包括多个输出)
- 内联函数
- 标量函数
- 视图
- 计算字段
或
下载后,双击以安装(关闭您可能已打开的任何Visual Studio实例)。安装完成后,当您下次打开Visual Studio时,扩展将安装并可供使用。
目的
用户指南提供了使用新ADUT应用程序的全面分步指南。它旨在传达最终用户可用的重要功能。
范围
本文档的范围是方便地传达 ADUT 解析应用程序的功能。
启动自动生成数据库单元测试扩展
在Visual Studio IDE中,选择“扩展→数据库单元测试生成器→配置面板”菜单选项,以打开配置面板。
“数据库设置”对话框
在这里,用户将输入他们希望对其生成单元测试的(临时)数据库的连接字符串。用户可以在控制面板中测试其连接字符串。
选择数据库类型、测试框架和所选编程语言。
注意:如果任何存储过程要输出多个数据集,则连接字符串属性必须用MultipleActiveResultSets=True(请参阅上面的连接字符串)进行修饰。
连接字符串凭据必须与数据库中的“视图定义”组相关联,以便应用程序可以从其架构重构数据库对象。
还可以选择将SQL脚本与单元测试的初始化和拆卸方法相关联,这些方法与类和/或单个单元测试方法相关联。
“加载”选项将允许用户检索以前保存的控制面板设置(项目可以在“生成单元测试”对话框阶段保存)。
用户单击“连接”按钮后,将解析数据库架构,并显示相应的数据库对象供用户选择。
“数据库对象”对话框
从这里,用户可能希望为所有可用的数据库对象创建单元测试,或者精细地选择一组特定的对象来生成单元测试。
底部的复选框适用于任何数据库表中的计算字段,这将为每个表的每个计算字段生成一个测试。
通过单击“生成单元测试”按钮,将自动生成测试并显示在编辑器窗口中。
多个数据库架构对象
应用程序将选取连接字符串有权访问的不同架构,以便你可以使用单元测试将数据库的某些方面作为目标。
单元测试编辑器窗口
从这里,用户可以将完整生成的单元测试类复制到剪贴板或突出显示特定的单元测试和复制。
注意:应用程序将生成要传递到存储过程中的虚拟值,用户必须重新配置需要传入的实际值,以便在执行ssertions 时使单元测试正常运行。
用户可以向后导航并重新选择要为其生成单元测试的数据库对象。只需将测试复制到单元测试类项目中,然后可以使用测试资源管理器执行该项目。
Visual Studio Test Explorer
在下面,您可以看到从自动生成的数据库编辑器窗口复制到C# MSTest类中的单元测试。
注意:对于Visual Studio 2022,您需要为MSTest项目添加NuGet包 System.Data.Sqlclient 进行编译。
使用测试资源管理器,用户可以验证其测试是否按预期工作,然后将单元测试项目签入其代码存储库,该代码存储库可针对其持续集成管道执行。
保存项目
单击“保存”按钮将提示用户选择一个目标文件夹来保存项目文件(以后可以加载)。
保存的项目文件示例
在下面,您可以看到从应用程序中保存的属性,当用户想要针对数据库再次重新生成测试时,可以再次重新导入这些控制面板设置。
https://www.codeproject.com/Articles/5351226/Autogenerate-Unit-Tests-For-Your-Database-Objects