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

自己做网站怎么选架构织梦网站程序

自己做网站怎么选架构,织梦网站程序,小城镇建设期刊网站,手机网站底部电话dubbo单元测试调用有时候#xff0c;您正在对远程服务器进行HTTP调用的单元测试代码。 您可能正在使用诸如ApachesHttpClient或Spring的RestTemplate之类的库。 当然#xff0c;您不想依靠远程服务进行单元测试。 除了涉及的开销#xff08;请记住单元测试应该是快速的您正在对远程服务器进行HTTP调用的单元测试代码。 您可能正在使用诸如ApachesHttpClient或Spring的RestTemplate之类的库。 当然您不想依靠远程服务进行单元测试。 除了涉及的开销请记住单元测试应该是快速的之外您根本不能依赖于在执行测试过程中可用的远程服务。 您可能还无法完全控制所有测试方案的响应。 考虑下面的简化示例。 ExampleHttpCall public class ExampleHttpCall {private String serviceUrl;public ExampleHttpCall(String url) {serviceUrl url;}public String doGet() {RestTemplate restTemplate new RestTemplate();ResponseEntityString responseEntity restTemplate.getForEntity(serviceUrl, String.class);String response responseEntity.getBody();return response;}} 您将如何为ExampleHttpCall编写单元测试 当然您可以通过重新设计类的方式将RestTemplate的实例注入到类中 ExampleHttpCall备用版本 Component public class ExampleHttpCallAlternateVersion {Resourceprivate RestTemplate restTemplate;private String serviceUrl;public ExampleHttpCallAlternateVersion(String url) {serviceUrl url;}public String doGet() {ResponseEntityString responseEntity restTemplate.getForEntity(serviceUrl, String.class);String response responseEntity.getBody();return response;}} 现在可以嘲笑该依赖关系从而使您可以更好地控制。 然而由于附加的配置该方法还导致增加的复杂性。 此外您可能会遇到很多乏味的嘲笑。 对于这个简单的示例使用模拟可能是解决方法。 但这并非总是如此。 如果是这样另一种可能的方法是使用本地测试服务器。 碰巧的是Apache HttpClient项目在其测试工件中提供了LocalTestServer。 如果您使用的是Maven则可以通过添加以下依赖项将其包括在内 dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpclient/artifactIdversion4.3.6/versionclassifiertests/classifierscopetest/scope /dependency 现在您可以在单元测试中设置服务器 LocalTestServer设置 private LocalTestServer server new LocalTestServer(null, null);Before public void setUp() throws Exception {server.start(); }After public void tearDown() throws Exception {server.stop(); } 当然仅启动和停止服务器并不能帮助您。 因此您还需要另一种成分。 您将要注册一个或多个实现org.apache.http.protocol.HttpRequestHandler接口的处理程序例如 注册您的处理程序 server.register(/foo/*, myHttpRequestHandler); HttpRequestHanlder接口将使您实现方法void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException; 该方法将使您完全控制HTTP响应。 因此对于我们的原始示例最小的单元测试可能类似于以下代码 基本单元测试 public class ExampleHttpCallTest {private ExampleHttpCall exampleHttpCall;private LocalTestServer server new LocalTestServer(null, null);private HttpRequestHandler myHttpRequestHandler new HttpRequestHandler() {Overridepublic void handle(HttpRequest request, HttpResponse response, HttpContext context) throws HttpException, IOException {response.setEntity(new StringEntity(foobar));}};Beforepublic void setUp() throws Exception {server.start();server.register(/foo/*, myHttpRequestHandler);String serverUrl http:/ server.getServiceAddress();exampleHttpCall new ExampleHttpCall(serverUrl /foo/bar);}Afterpublic void tearDown() throws Exception {server.stop();}Testpublic void test() {String result exampleHttpCall.doGet();assertEquals(foobar, result);}} 这就是开始所需要的全部。 从这里开始您可以通过为每种可能的情况添加测试用例来进行详细说明。 翻译自: https://www.javacodegeeks.com/2015/08/unit-testing-http-calls-with-localtestserver.htmldubbo单元测试调用
http://www.sadfv.cn/news/257141/

相关文章:

  • 广州网站建设 讯度网络城区注册旅游公司网上注册流程
  • 2018年期刊网站建设调查网站优化一般要怎么做
  • 宣讲家网站支部建设wordpress图片上传
  • 网站建设栏目添加重庆网站建设策划
  • 用wordpress搭建的网站中国网站备案信息查询
  • 电子商城平台网站建设做旅游网站能成功
  • ai中如何做网站切图wordpress 调用相册
  • 小型教育网站的开发建设开题报告个人备案网站做购物网站可以不
  • 网站自动生成网页网站建设技术规范
  • 遵义市住房城乡建设局网站企业网站优化推广公司
  • 网站备案链接代码wordpress 做社区
  • 网站内容优化方案seo网站排名优化方案
  • vue做的个人网站excel可以制作网页吗
  • 怎么建立免费的网站wordpress商城怎么样
  • 衡水网站制简约智能设备制造公司网站
  • 网站建设市场行情报价太原网站制作哪家便宜
  • 如皋市建设局网站汽修厂做网站有什么好处
  • 做电影网站只放链接算侵权吗企业网站模板用哪个
  • 做网站应该用什么配置的手提电脑seo的描述正确
  • 找私人做网站网络营销效果评估的作用
  • 厦门网站制作策划好的网站有哪些
  • 网站关键词描述wordpress 主题 三栏
  • 如何做网站线上监控谷歌浏览器网址
  • 蚌埠建设网站威县做网站哪里便宜
  • 仿一个网站人才网站建设策划书
  • 汉中建站公司vs 网站开发教程
  • 国外科技类网站手机开发游戏的软件
  • 怎么判断网站建设年龄网站备案幕布怎么申请
  • 造价师证书在建设部网站查询百度收录网站但首页快照不更新
  • asp网站下用php栏目用网站做的简历模板