php dubbo 接口测试工具,dubbo服务自动化测试搭建

java实现dubbo的消费者服务编写;ruby实现消费者服务的接口测试;通过消费者间接测试dubbo服务接口的逻辑

内容包括:dubbo服务本地调用环境搭建,dubbo服务启动,消费者部署,脚本编写测试

自动化测试框架逻辑如下图:

3e8df284c53948eb2a4df28d8b6ae201.png

一、dubbo服务本地环境搭建:

zookeeper部署:

修改配置文件:conf/zoo_sample.cfg 变更为zoo.cfg;打开文件配置需要的信息

双击bin目录下的zkServer.cmd即可启动(Windows下 )linux 使用zkServer.sh

6a66f5ad5e34f25035fdbc7f41e3761e.png

Dubbo-admin管理平台:

网上下载war;放到tomcatwebapps中 ;

或者下载源码编译 https://github.com/alibaba/dubbo;直接编译dubbo-admin即可:进入目录:输入命令:mvn package -Dmaven.skip.test=true 编译好后会生成war包

tomcat的配置需要修改 端口不可被占用。Conf/Server.xml;

截图如下:

99a58e510b2dbab9a7860df1a4420d94.png

c4c31a468c1eeb4547f0d28dc0d787d2.png

55a80fff6714973a96ef04c14def6184.png

8088是访问tomcat服务的端口

Dubbo-admin项目包的中zookeeper配置需要配置成自己的zookeeper地址。

apache-tomcat-7.0.53\webapps\dubbo-admin-2.4.1\WEB-INF\dubbo.properties

ffb83034d23387c485a79543581a8a7c.png

配置好后,先启动zookeeper 再启动tomcat

输入网址:http://localhost:8088/dubbo-admin-2.4.1/ 即可进入。

474d9284a8d9101434886c262ab4ad43.png

二、dubbo服务启动

将dubbo服务放置tomcat中 配置zookeeper 然后启动(可以和dubbo-admin公用一个tomcat),这样可以在dubbo-admin管理平台看到我们注册的dubbo服务提供者

8aae432e5232c75f43825a5a377ec504.png

三、消费者部署启动(http协议的web服务)

这个消费者web服务需要开发在开发dubbo项目的时候,一起开发出来。

Web服务功能:不做任何业务处理,仅是请求dubbo里面提供的api 原封不动返回请求dubbo返回的数据;供测试部署作为dubbo服务的消费者。即dubbo服务测试的一个管道,这样可以直接用http接口测试工具测dubbo服务。(所以后续dubbo项目的测试得麻烦开发开发完成后写一个web项目(消费者)供测试调用dubbo提供者)

例如:

23600d51b8b738d6b8a5da83161e1fd8.png

将消费者放到tomcat中,配置好zookeeper,启动就可以注册到注册中心。

50543abbf1f5fabe418a29edf03693ca.png

消费者服务主要的配置说明:

1. 引入dubbo-api jar包,pom.xml

2.消费者spring配置文件applicationContext-consumer.xml:配置zookeeper(自己搭建的或者测试环境已有的)以及需要用到的dubbo的interface

23b1c45beab7f187de2875fc55b45d3c.png

864d9bea44801a1d933fa1ae2e364bb6.png

如果用的是测试环境公用的zookeeper,interface的配置需要加上你想访问的dubbo的url地址:

5a538582b9b876a4e107cf48001b5ebb.png

3. 然后将消费者项目放到tomcat中启动,注意tomcat的端口不要被占用。(例如设置的访问端口为8089)

四、dubbo接口测试

1.接口工具请求消费者获取dubbo返回的数据:

432fbe9bea4aafc4357badaabb1a950f.png

2. ruby脚本自动化测试dubbo:

Ruby脚本编写接口自动化,直接请求消费者服务,进行dubbo服务的功能逻辑测试。和http接口自动化测试无区别。

ee68e3350c4d549aefb57edc72eab26b.png

dubbo服务简单搭建

一.初识dubbo: 架构图: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发现的注册中心. Monitor: 统计服务的 ...

Dubbo服务的搭建

dubbo框架主要作用是基于RPC的远程调用服务管理,但是注册中心是用的zookeeper,搭建dubbo,首先要安装zookeeper,配置zookeeper... 实现功能如图所示:(存在2个系统 ...

Dubbo服务的搭建与使用

官方地址Dubbo.io Dubbo 主要功能 高并发的负载均衡,多系统的兼容合并(理解不深,不瞎掰了) Dubbo 主要组成有四部分 Zookeeper(服务注册中心) Consumer(服务消费方 ...

Dubbo——基于Zookeeper服务框架搭建及案例演示

一.了解SOA微服务架构 在大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡. (1) 当服务越来 ...

Dubbo学习笔记2:Dubbo服务提供端与消费端应用的搭建

Demo结构介绍 Demo使用Maven聚合功能,里面有三个模块,目录如下: 其中Consumer模块为服务消费者,里面TestConsumer和consumer.xml组成了基于Spring配置方式 ...

windows环境搭建dubbo服务

windows环境搭建dubbo服务 1:首先需要下载dubbo的注册中心 zookeeper zookeeper注册中心下载地址链接:http://mirror.bit.edu.cn/apache/ ...

【2020-03-21】Dubbo本地环境搭建-实现服务注册和消费

前言 本周主题:加班工作.本周内忙于CRUD不能自拔,基本每天都是九点半下班,下周上线,明天还要加班推进进度.今天是休息日,于是重拾起了dubbo,打算近期深入了解一下其使用和原理.之所以说是重拾,是 ...

dubbo系列四、dubbo服务暴露过程源码解析

一.代码准备 1.示例代码 参考dubbo系列二.dubbo+zookeeper+dubboadmin分布式服务框架搭建(windows平台) 2.简单了解下spring自定义标签 https://w ...

Dubbo简单环境搭建

Dubbo服务的发展和作用: 首先,看下一般网站架构随着业务的发展,逻辑越来越复杂,数据量越来越大,交互越来越多之后的常规方案演进历程. 其次,当服务越来越多之后,我们需要做哪些服务治理? 最后,是d ...

随机推荐

【转】Mysql联合查询union和union all的使用介绍

Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...

《奥威Power-BI智能分析报告制作方法 》精彩回顾

上次课我们简单介绍了奥威Power-BI的智能分析报告,并展示了报告与图表相结合的应用场景.图文分析报表的意义不只在于美观,更重要的是固定框架下的灵活性和追根究底的动态分析,有着很强的实用性.上节课 ...

Asp:Button控件onclick事件无刷新页面提示消息

流畅的python学习笔记:第五章

在python中一切都可以视作为对象,包括函数.我们来看个例子: def function_try():     '''it is funciton try doc'''     print 'fun ...

JDBC(一)之细说JDBC

Properties info = new Properties();//要参考数据库文档 info.setProperty("user", "root"); ...

初识Selenium以及Selenium常用工具的简单介绍

一.为什么要学习自动化测试? 在互联网行业中敏捷开发小步快跑,快速迭代,测试环节中回归测试任务大繁琐,手工测试容易漏测,自动化测试可以提高测试效率保证产品质量. 二.学习的层次模型 1.单元自动化测试 ...

iOS开发之将字典、数组转为JSON字符串方法

//将字典转换成json格式字符串,不含\n这些符号 + (NSString *)gs_jsonStringCompactFormatForDictionary:(NSDictionary *)dic ...

JavaScript 中定义变量时有无var声明的区别

关于JavaScript中定义变量时有无var声明的区别 var a=5; //正确 a=5; //正确 在javascript中,以上两种方法都是定义变量的正确方法.微软的Script56.CHM中 ...

新手C#参数类型ref、out、params的学习2018.08.04

ref用于传递参数时,将实参传递到函数中,是引用参数,在使用前必须被赋值.string类型也同样适用. static void Main(string[] args) { string a1,a2; ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值