当前位置: 首页 > news >正文

做网站域名怎么选有利于seoapp 网站 同时做

做网站域名怎么选有利于seo,app 网站 同时做,适合女生的长久职业,股票网站怎么做更方便地 Mock Http ResponseIntro在我们的业务代码中往往会有很多调用内部其他 team 或者是第三方的一些服务#xff0c;在编写单元测试代码时#xff0c;往往需要 Mock Http Response 来模拟更好可能的返回结果#xff0c;我封装了一个简单的 Http Handler 来简化 Mock 过… 更方便地 Mock Http ResponseIntro在我们的业务代码中往往会有很多调用内部其他 team 或者是第三方的一些服务在编写单元测试代码时往往需要 Mock Http Response 来模拟更好可能的返回结果我封装了一个简单的 Http Handler 来简化 Mock 过程让基于 HttpClient Http Response 的模拟更为简单。Sample首先来看一个简单的使用示例也是一个测试用例[Theory] [InlineData(HttpStatusCode.OK)] [InlineData(HttpStatusCode.BadRequest)] [InlineData(HttpStatusCode.Unauthorized)] [InlineData(HttpStatusCode.Forbidden)] [InlineData(HttpStatusCode.NotFound)] [InlineData(HttpStatusCode.InternalServerError)] public async Task HttpStatusTest(HttpStatusCode httpStatusCode) {var httpHandler  new MockHttpHandler(req  new HttpResponseMessage(httpStatusCode));using var httpClient  new HttpClient(httpHandler);using var response  await httpClient.GetAsync(http://localhost:32123/api/values);Assert.Equal(httpStatusCode, response.StatusCode); }如果有需要在测试的过程中修改模拟的行为可以通过 SetResponseFactory 方法来[Fact] public async Task SetResponseFactoryTest() {var httpHandler  new MockHttpHandler();using var httpClient  new HttpClient(httpHandler);var response  await httpClient.GetAsync(http://localhost:32123/api/values);Assert.Equal(HttpStatusCode.OK, response.StatusCode);httpHandler.SetResponseFactory(req  new HttpResponseMessage(HttpStatusCode.BadRequest));response  await httpClient.GetAsync(http://localhost:32123/api/values);Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); }上面的方式都是直接指定了 response我们也可以根据请求信息动态地返回 response[Fact] public async Task DynamicResponseTest() {var httpHandler  new MockHttpHandler(req  new HttpResponseMessage(HttpStatusCode.OK){Content  new StringContent(req.Method.Method)});using var httpClient  new HttpClient(httpHandler);var response  await httpClient.GetStringAsync(http://localhost:32123/api/values);Assert.Equal(HttpMethod.Get.Method, response);using var httpResponse  await httpClient.PostAsync(http://localhost:32123/api/values, new StringContent());response  await httpResponse.Content.ReadAsStringAsync();Assert.Equal(HttpMethod.Post.Method, response); }Implement实现代码很简单大致如下根据自定义的逻辑去返回 response 即可public sealed class MockHttpHandler : HttpMessageHandler {private FuncHttpRequestMessage, TaskHttpResponseMessage _responseFactory;public MockHttpHandler() : this(_  Task.FromResult(new HttpResponseMessage(HttpStatusCode.OK))){}public MockHttpHandler(FuncHttpRequestMessage, HttpResponseMessage responseFactory){Guard.NotNull(responseFactory);_responseFactory  req  Task.FromResult(responseFactory(req));}public MockHttpHandler(FuncHttpRequestMessage, TaskHttpResponseMessage responseFactory){Guard.NotNull(responseFactory);_responseFactory  responseFactory;}public void SetResponseFactory(FuncHttpRequestMessage, HttpResponseMessage responseFactory){Guard.NotNull(responseFactory);_responseFactory  req  Task.FromResult(responseFactory(req));}public void SetResponseFactory(FuncHttpRequestMessage, TaskHttpResponseMessage responseFactory){Guard.NotNull(responseFactory);_responseFactory  responseFactory;}protected override TaskHttpResponseMessage SendAsync(HttpRequestMessage request, CancellationToken cancellationToken){return _responseFactory(request);} }More在需要模拟 Http API 的响应时可以考虑使用这种方式希望对你有帮助最近有几位小伙伴希望建一个微信交流群于是建了一个微信群有需要的小伙伴可以扫描下面的二维码加群如果二维码失效也可以加我微信来加群Referenceshttps://github.com/WeihanLi/WeihanLi.Common/blob/dev/src/WeihanLi.Common/Http/MockHttpHandler.cshttps://github.com/WeihanLi/WeihanLi.Common/blob/dev/test/WeihanLi.Common.Test/HttpTest/MockHttpHandlerTest.cs
http://wiki.neutronadmin.com/news/80388/

相关文章:

  • 响应式 网站建设创建电子商务网站的7个步骤
  • wordpress游戏网站模板企业展厅建设计划书
  • 庆阳定制网站网站的后期维护自己怎么做
  • 工程建设网站自己电脑怎样做网站
  • 用服务器ip做网站页面简单响应式网站设计代码
  • 个人网站开发可行性报告网站seo诊断湖南岚鸿
  • 苏州高端模板建站广东省监理建设协会网站
  • 做一个网站的基本步骤强大的网站
  • 深圳教育网站设计公司深圳管控最新消息
  • 建站服务网络公司东丽做网站
  • 手机网站图片锚链接怎么做网络营销效果评估的作用有哪些
  • 游戏软件网站开发网址一键生成app免费
  • 站外推广营销方案wordpress清除所有评论
  • 网站建设及服务合同apache fastcgi wordpress
  • 做网站做手机站还是自适应站自己怎么做网站网页
  • 禁止拿我们的网站做宣传青岛易龙网站建设
  • 烟台h5网站制作公司wordpress最常用水印
  • 如何创建设计个人网站seo外链的常见措施
  • 登录功能网站怎么做织梦网站制作费用
  • 网站建设教程免费湖南岚鸿wordpress tagline
  • 郑州专业网站设计公司地址移动互联和网站开发哪个好
  • 目前网站软件wordpress 挂件
  • 云南网站制作报价适合0基础网站开发软件
  • 古风网站建设文字图片一键生成器
  • 上海网站推广优化公司国外服务器ip大全
  • 更改网站主题江苏提升关键词排名收费
  • 优化网站技术汶上做网站
  • 周口市做网站h5游戏网站建设
  • title 网站建设广州10大网站开发
  • 做网站要会写什么软件网站建设项目需求说明