如何为使用xunit.runner.dnx运行的xunit测试正确初始化EF7



我有一个DNX单元测试程序集,我在其中测试使用EF7的代码。

在一个web应用程序中,我有Startup类,在那里我可以提供ConfigureServices(IServiceCollection services)方法并初始化如下:

public void ConfigureServices(IServiceCollection services)
{
    services.AddEntityFramework()
        .AddSqlServer()
        .AddDbContext<RadarDbContext>(options =>
            options.UseSqlServer(
            Configuration["Data:DefaultConnection:ConnectionString"]));
}

在DNX下运行的xunit测试的等效"钩子"在哪里?

Xuit的DNX运行程序从不调用Startup.cs。您要查找的"钩子"要么是类fixture,要么是测试类构造函数。(请参见https://xunit.github.io/docs/shared-context.html)

如何选择从那里初始化EF取决于您。您可以使用依赖注入并遵循上面的.AddDbContext()模式,也可以直接初始化DbContext。(参见https://github.com/aspnet/EntityFramework/wiki/Configuring-a-DbContext有点过时)

相关内容

  • 没有找到相关文章

最新更新