dotnet test - 有没有可能覆盖 .net core 配置?

4

.NET Core应用程序中的配置值是否可以在通过“dotnet test”执行测试时进行覆盖(例如使用AddCommandLine扩展,就像在执行“dotnet run”时使用它一样)。

更多信息:

测试通过集成测试执行了一些启动操作(Startup.cs),我希望在此处覆盖某些配置值。


一个选项是为测试创建一个 Startup.cs,或者使用 app.settings 来配置你的测试。 - Fabricio Koch
已经有了,正在寻找一种方法来覆盖appsettings文件中的配置。 - Denis Biondic
我有一个appsettings.json(生产环境)和一个appsettings.development.json。你可以做同样的事情,或者创建一个新的文件:比如appsettings.test.json。 - Fabricio Koch
我知道你可以有多个配置文件(称为变换),但我的问题是你是否可以通过命令行覆盖配置值,而不是拥有不同的配置文件! - Denis Biondic
1个回答

0
你应该创建一个接口和一个包装类来处理appsettings,并且在测试项目中要么模拟你的接口,要么使用伪造对象。这样你就能够控制在测试时需要设置的appsettings内容。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接