繁体   English   中英

使用 nunit3-console runner 时查找配置文件时出错

[英]Error finding configuration file when using nunit3-console runner

我正在尝试通过 nunit3-console runner 执行我的 SpecFlow 测试,但我收到以下错误:

System.IO.FileNotFoundException : The configuration file 'appsettings.json' was not found and is not optional. The expected physical path was 'C:\Users\...\.nuget\packages\nunit.consolerunner\3.15.0\tools\agents\net6.0\appsettings.json'.

显然,runner 试图在 nunit3-console package 目录而不是复制文件的活动/当前目录中查找配置文件。 有没有办法指定正确的文件目录?

我使用的命令如下(或见下图):

[nunit3-console runner package path] [test .dll path] --trace=off

也许它是可见的,但我使用的 nunit3-console runner package 是版本 3.15.0,框架的版本是 .net 6。

这是详细的错误:

堆栈跟踪

更新

问题出在构建配置的方式上。

前:

Configuration = new ConfigurationBuilder()
    .SetBasePath(AppDomain.CurrentDomain.BaseDirectory)
    .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
    .Build();

后:

Configuration = new ConfigurationBuilder()
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .Build();

这两者之间的区别如下所示:

AppDomain.CurrentDomain.BaseDirectory

"C:\\Users\\...\\source\\repos\\qa-automation\\...\\bin\\Debug\\net6.0\\"

目录.GetCurrentDirectory()

"C:\\Users\\...\\source\\repos\\qa-automation\\...\\bin\\Debug\\net6.0"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM