如何在测试中托管Kestrel服务器?

时间:2018-04-09 19:07:25

标签: asp.net-core kestrel-http-server

我需要测试我的ASP.NET核心路由以及IWebHost的其他配置以及WebSocket代码。为此我相信在我的自动化测试中实际托管Kestrel是最好的方法。

我如何主机配置IWebHost,以便它监听我准备的HttpMessageHandler而不是在实际端口上侦听,这样我就可以模拟传递给它的消息? 或者有更好的方法吗?

我甚至找不到一个属性来公开它默认收听的端口。

1 个答案:

答案 0 :(得分:1)

您可以使用nuget中的这个包Microsoft.AspNetCore.TestHost。本文将为您提供帮助。 https://docs.microsoft.com/en-us/aspnet/core/testing/integration-testing