【发布时间】:2020-03-11 14:35:54
【问题描述】:
我有一个类库,其中包含一些DelegationHandlers,很简单,获取请求,根据请求内容添加一些标头并传递请求。
所以我需要为我的库编写单元测试。我正在使用 .NET Core 2.1 和 xunit,我想知道是否有办法模拟 Web 服务器,然后我可以使用我的库向该 Web 服务器发送请求并检查我的请求结果?知道如何模拟 Web 服务器(应用程序)吗?或者我如何通过发送 http 请求来测试我的库?
【问题讨论】:
-
您是否尝试过为此使用
TestServer?这个article 可能会有所帮助 -
@PavelAnikhouski 据我所知,在 TestServer 中您已经有一个 Web 应用程序或 api,然后您将使用 TestServer 启动该应用程序进行测试。在我的情况下,我只有一个类库,我怎么能启动一个 TestServer 不存在的 web api?
-
@Saeid 我认为这个想法是您制作一个 Test.WebApp 项目,然后您可以使用 WebApplicationFactory 并将其链接到该 Startup 类,以便拥有一个存在的 WebApi。我很感激这并不理想
-
@JonE 感谢您的评论,我考虑过这一点,但我想知道为什么没有人考虑这种情况,要么我错过了一些东西,要么可能已经有了解决方案。
标签: unit-testing .net-core integration-testing xunit