c# - 集成测试将数据库文件添加到我的测试项目。我该怎么做

标签 c# unit-testing

我需要做一些集成测试。目前我有一些脚本,每个程序集运行一次,如果不存在则创建数据库并填充它。

我认为如果我可以将数据库文件添加到测试项目,然后相应地填充和清除数据库会更好。即使这不是最好的方法 如何将数据库文件(例如“MyTestDB.mdf”添加到我的项目中。我使用的是 VS 2010 高级版。

建议?

最佳答案

几年前,我对此进行了一些实验,得出的结论是,针对 SQL Server 进行集成测试的最快方法是将数据库本身(包括架构)作为 Immutable Shared Fixture。 , 但没有任何数据。

作为 Fixture Teardown 的一部分,所有表都被截断,为下一个测试用例留下一个干净的数据库。每个测试用例将其所需的数据填充到数据库中,作为构建 Fixture 的一部分。 A few years back I described this approach它仍然是我所知道的最好的。

我也尝试过附加和分离数据库文件,但事实证明上述过程更快。

关于c# - 集成测试将数据库文件添加到我的测试项目。我该怎么做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5726420/

相关文章:

ruby-on-rails - 根据当前路径更改行为的助手的单元测试?

c# - 在大约 50 个 IIS Web 服务器(asp.net 和 asp 组合)上部署代码的部署技术

c# - Silverlight ItemsControl 行为 : how do i get an item i click on?

node.js - Node - 用于测试的 stub Nodemailer 传输

Angular 单元测试模拟服务

iOS AppUITests - SDK 'UI Testing Bundle' 中的产品类型 'iOS 10.2' 需要代码签名

c++ - 动态选择类中私有(private)成员的类型

c# - 从代码隐藏中打开 jQuery UI 对话框

c# - 如何显示 Javascript 警报而不是黄页错误

c# - 在 asp.net MVC Controller 中调用异步外部 Web 服务