当前位置: 首页 > 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://www.yutouwan.com/news/80388/

相关文章:

  • 网站建设与服务技能实训心得体会展馆公司
  • asp.net网站建设项目实战 董义革网站开发 项目规划 怎么写
  • 一个简易网站怎么做制作网页的代码实例
  • 机关网络 网站 建设有关中国文明网联盟网站建设活动方案
  • 广安做网站郑州注册公司网站
  • 建设网站北京市wordpress死链跳转
  • 北京网站设计工作室做企业网站应该注意什么
  • 用python做的大型网站西部数码搭建多个wordpress
  • 网站上有声的文章是怎么做的怎么建立一个博客网站吗
  • 深州市住房保障和城乡建设局网站建筑设计防火规范
  • 网站底部 设计个人网站内容怎么写
  • 如何免费做网站推广的广东东莞属于哪个市
  • 8有免费建网站建设主管部门指定网站
  • 成都企业网站设计生物信息网站建设
  • 福建省建设系统网站站酷网怎么赚钱
  • scatter网站开发深圳财务小公司网站
  • 长春网站设计团队互动营销经典案例
  • 公司网站建设有哪些郑州网站制作公司哪家好
  • 网站开发范围佛山网站建设企业推荐
  • 网站备案更换深圳电器公司招聘信息
  • 福建省亿力电力建设有限公司网站上海徐汇区网站建设
  • 国外做化工网站今天上海最新新闻事件
  • 做彩网站网站标题优化 英文
  • 网站建设保定登陆Wordpress手机app
  • 网站建设实训课游戏网站建设项目规划书案例
  • 网站建设带后台怎样做自己的网页
  • 广州市网站网站前端程序制作开发
  • 中国亚马逊跨境电商江苏seo团队
  • 网站风格介绍怎么一个网站做的竞价
  • 怎样用FW做网站的首页做视频网站要申请什么许可证