【问题标题】:Load additional controller using TestServer in .NET Core 3.1 Web API在 .NET Core 3.1 Web API 中使用 TestServer 加载附加控制器
【发布时间】:2020-04-12 05:44:58
【问题描述】:

我在单元测试中使用以下代码:

var hostBuilder = new HostBuilder()
        .ConfigureWebHost(webHost =>
        {
            // Add TestServer
            webHost.UseTestServer();
            webHost.UseStartup<Startup>();

        });

我只想在测试服务器中添加一个新控制器。在我的正常 und 单元测试项目中使用相同的 StartUp 是否有可能?

更新: 说清楚:

我在 MainProject.Controllers 中有我的主控制器。在我的 UnitTestProject 中创建我的 TestServer 时,我想另外加载 UnitTestProject.Controllers(但仅适用于 TestServer)。

【问题讨论】:

    标签: c# asp.net-core asp.net-web-api asp.net-core-webapi


    【解决方案1】:

    如果你想添加新的控制器,你可以在ProjectName.Controller命名空间下创建新文件。

    【讨论】:

    • 我在 MainProject.Controllers 中有我的主控制器。在我的 UnitTestProject 中创建我的 TestServer 时,我想另外加载 UnitTestProject.Controllers。
    【解决方案2】:

    我想我找到了答案:

    我从 Startup 派生了一个 TestStartup(在我的 UnitTestProject 中)类。这似乎可以解决问题。

    【讨论】:

      猜你喜欢
      • 2020-06-05
      • 2020-09-14
      • 1970-01-01
      • 1970-01-01
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      • 2020-07-14
      • 1970-01-01
      相关资源
      最近更新 更多