【问题标题】:XUnit .Net Core How to get local settings inside Test projectXUnit .Net Core 如何在测试项目中获取本地设置
【发布时间】:2020-01-16 05:29:29
【问题描述】:

我有一个 XUnit 项目,用于我的 Api 项目的 End2End 测试。

Unit 项目内部:MyApi.E2E.Test

在它的根目录下,我有一个设置文件:

e2e-local-settings.json

现在我有一个名为:MyWebApplicationFactory 的文件

public class MyWebApplicationFactory<TStartUp>: WebApplicationFactory<Startup>
{
    protected override void ConfigureWebHost(IWebHostBuilder builder)
    {
       ........code here.......
    }
}

TEST项目下如何加载设置json文件。

我读过这个:https://stackoverflow.com/a/47591692/601862 但它不是从测试项目加载,而是从 Api 项目加载。

【问题讨论】:

    标签: c# asp.net-core .net-core xunit


    【解决方案1】:

    它没有找到它的原因是因为配置文件应该在应用程序运行目录中。在您的 .csproj 文件中,您需要添加一个 &lt;Content&gt; 标记,以便将其复制到输出目录。

    <ItemGroup>
      <Content Include="e2e-local-settings.json" CopyToOutputDirectory="PreserveNewest" Link="e2e-local-settings.json" />
    </ItemGroup>
    

    确保在添加后查看调试器中加载的模块窗口,并查看加载测试 .dll 的路径。查看该目录,并确保该文件存在于那里,如果该文件不存在,它将以您看到的方式失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-27
      • 1970-01-01
      • 1970-01-01
      • 2019-06-08
      • 1970-01-01
      • 1970-01-01
      • 2018-02-20
      • 2018-05-26
      相关资源
      最近更新 更多