如何解决HttpClientHandler 设计与测试冲突
我在一次运行时集成测试失败,但如果单独运行则通过。
测试针对服务 1,它初始化依赖的服务 2。服务 2 通过 DI 接收 httpclienthandler,并在其中设置默认行为(AllowAutoRedirect 属性)。
由于测试场景,我必须使用 httpclienthandler 在服务 2 中创建 HttpClient。(具体来说,通过 httpclienthandler 的调用在响应内容更改的集成测试中被拦截。有无法通过 HttpWebRequest 和 HttpClientFactory 执行此操作。因此 httpclienthandler 的默认行为在服务 2 的构造函数中)。
为什么同时运行测试时会出现此错误?什么事情发生了两次?测试单独运行良好,老实说这令人困惑。
system.invalidOperationException : This instance has already started one or more requests. Properties can only be modified before sending the first request.
Stack Trace:
SocketsHttpHandler.CheckdisposedOrStarted()
httpclienthandler.set_AllowAutoRedirect(Boolean value)
我在某个地方犯了一个设计罪吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。