2016-03-01 60 views
4

下面是測試項目的launchSettings.json文件:集成測試期間與多個環境中工作與ASP.NET核心

{ 
    "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類的本地測試版本嗎? The docs似乎表明否則...... appsettings從哪裏來?他們不會將測試項目顯示爲在本地有appsetting的副本,但我很確定Startup類(無論是重用還是本地)都需要它。請指教。

回答

8

您可以使用UseEnvironment方法。

Server = new TestServer(TestServer.CreateBuilder().UseEnvironment("Testing").UseStartup<Startup>());

0

使用.UseEnvironment( 「發展」)將讓您詳細的錯誤信息和等