我一直试图让集成测试适用于我的 dotnetcore3.1 API,但没有成功。我了解,出于集成测试的目的,可以使用自定义 Web 应用程序工厂并简单地从中创建一个客户端来调用 api 端点。完成了,我有这个并且效果很好。
我的问题是我必须通过一个 NSwag 客户端来执行此操作,该客户端处理身份验证并负责 http 客户端的所有配置。
因此,我需要获取已在 Web 应用程序工厂 (webhostbuilder) 阶段注入的我的 nswag 客户端服务,但我认为我需要使用它而不是 factory.CreateClient()。
我认为,因为我没有调用 CreateClient,所以这是出现错误的原因 - 在我期望在测试中对请求做出响应的时候,“无法建立连接目标机器主动拒绝它” 。
那么当这个依赖的实现被隐藏在你希望使用的 Nswag 服务中时,如何使用 factory.createclient 呢?
我完全错过了什么吗?