这是测试项目的launchSettings.json文件:
{
"profiles": {
"test": {
"commandName": "test",
"environmentVariables": {
"Hosting:Environment": "Development"
}
}
}
}
测试项目依赖于服务器项目,并直接使用服务器项目的 Startup
类初始化测试,如下所示:
Server = new TestServer(TestServer.CreateBuilder().UseStartup<Startup>());
Client = Server.CreateClient();
然而,出于某种原因,当我在调试器中输入 Startup.Configure
方法时,env.EnvironmentName
是生产。我应该在哪里设置测试 .xproj 的环境名称?
相关说明中,我是否应该在测试项目中具有 Startup
类的本地测试版本?文档似乎另有建议...应用程序设置从何而来?他们不会将测试项目显示为在本地具有appsettings的副本,但我很确定Startup
类(无论是重用还是本地)都需要它。请指教。
您可以使用 UseEnvironment 方法。
Server = new TestServer(TestServer.CreateBuilder().UseEnvironment("Testing").UseStartup<Startup>());
使用 .使用环境("开发")将为您提供详细的错误消息等