我正在尝试为MSTest项目配置EntityFramework以进行集成测试,通常我会通过启动项来配置我的项目,如下所示:
我的测试项目看起来像这样:
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddApplicationInsightsTelemetry(Configuration);
var defaultConnectionString = Configuration.GetConnectionString("DefaultConnection");
services.AddEntityFrameworkSqlServer()
.AddDbContext<AstootContext>(options =>
options.UseSqlServer(defaultConnectionString))
.AddDbContext<PublicAstootContext>(options =>
options.UseSqlServer(defaultConnectionString));
//...
}
我的测试项目看起来像这样:
[TestClass]
public class UnitTest1 : ServiceTestBase
{
string ConnectionString = @"Data Source=.\SQLEXPRESS;
AttachDbFilename=C:\source\Astoot\RestEzCore.Tests\TestDB\NORTHWND.MDF;
Integrated Security=True;
Connect Timeout=30;
User Instance=True";
[TestInitialize]
public void RegisterTestModules
{
}
[TestMethod]
public void TestMethod1()
{
}
}
我该如何重复使用与我的WebAPI项目相同的依赖注入,并以类似的方式配置我的测试。