在web.config文件中初始化上下文时,如何为dbcontext创建单元测试?

时间:2011-06-23 16:56:02

标签: unit-testing asp.net-mvc-3

我在web.config文件中的项目

...    
<add name="fooDBContext"
        connectionString="Data Source=foo;Initial Catalog=WebData;User Id=scpauser;Password=password;" providerName="System.Data.SqlClient" />
    </connectionStrings>

我的单元测试是在一个单独的项目中

namespace unit_tests.ModelTests
{
    [TestClass]
    public class CAMADBContextTest
    {
        [TestMethod]
        public void TestMethod1()
        {
            Database.SetInitializer<mvc3test.Models.CAMADBContext>(null);

            var db = new mvc3test.Models.CAMADBContext();
            var dps = db.DataProperty.Where(p => p.AccountNumber == 141);

        }
    }
}

1 个答案:

答案 0 :(得分:1)

对于我项目中的类似情况,我将web应用程序中web.config的配置条目添加到单元测试项目中的App.config。然后我不需要对代码进行任何更改来读取配置条目,它与Web应用程序中的工作方式相同。