0

我在 App_Data/ASPNETDB.MDF 下有一个带有本地数据库的 MVC3 Web 应用程序。我还有一个用于运行 NUnit 的集成测试项目。它有一些从数据库中读取的测试。我将连接字符串从 MVC 项目的 web.config 复制到测试项目的 app.config。这两个项目都使用实体框架代码优先。

我的网站运行良好。我的测试运行良好。但两个项目的数据不同。Ergo ...他们使用不同的数据库,对吗?

<head scratch="true">
    <puzzledLook />
</head>

我的问题

  1. 它们真的是不同的数据库吗?
  2. 测试项目的数据库文件在哪里?我找不到它。
4

2 回答 2

1

测试运行会创建一个测试文件夹。您的数据库文件是否标记为复制到输出目录?在那种情况下你能不加吗

Assembly.GetExecutingAssembly().Location

你的任何单元测试?

于 2012-07-17T21:52:05.557 回答
0

我认为上面的答案是正确的,尽管我会使用 Environment.GetCommandLineArgs()[0]

我的测试项目的一个例子是 c:\program files\microsoft visual studio 9.0\common7\ide\

我好像记得AppData文件夹被复制到exe的位置,这样它运行的时候就可以找到数据了

导致该问题的原因是单元测试由名为 VSTestHost.exe 的单独可执行文件运行

于 2012-07-17T22:02:29.867 回答