如何在使用Visual Studio进行测试时使用ASP.NET Core环境变量

问题描述 投票:3回答:3

在我的集成测试中,我想在测试在开发环境中运行时设置一个特定的连接字符串,而在测试在暂存环境中运行时设置另一个连接字符串。

当我不处于测试模式时,我只需在计算机上设置环境变量,然后一切正常。但是在测试中,我可以使用UseEnvironment(envX),但是在所有计算机上它都将是envX,或者不使用此方法,并获得默认值(即生产状态)。

所以,在集成测试中如何使用基于环境的多个连接字符串?

visual-studio-2015 asp.net-core environment-variables integration-testing visual-studio-2017
3个回答
4
投票
SET ASPNETCORE_ENVIRONMENT=TestSET ASPNETCORE_ENVIRONMENT=SomeOtherEnvironment

2
投票
//IHostingEnvironment env; env.EnvironmentName = 'Development'; env.IsDevelopment() // return true; env.EnvironmentName = 'TEST'; env.IsDevelopment() // return false; env.IsEnvironment('TEST') // return true;

0
投票
$env:ASPNETCORE_ENVIRONMENT="test" dotnet test
© www.soinside.com 2019 - 2024. All rights reserved.