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

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

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

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

zookeeper部署:

http://www.apache.org/dyn/closer.cgi/zookeeper/ 下载 直接解压;

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

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

Dubbo-admin管理平台:

网上下载war;放到tomcatwebapps中 ;

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

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

截图如下:

8088是访问tomcat服务的端口

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

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

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

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

二、dubbo服务启动

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

 

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

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

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

例如:

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

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

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

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

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

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

四、dubbo接口测试

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

2. ruby脚本自动化测试dubbo

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

dubbo服务自动化测试搭建的更多相关文章

  1. dubbo服务简单搭建

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

  2. Dubbo服务的搭建

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

  3. Dubbo服务的搭建与使用

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

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

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

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

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

  6. windows环境搭建dubbo服务

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

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

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

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

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

  9. Dubbo简单环境搭建

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

随机推荐

  1. oracle xmltype导入并解析Excel数据 (一)创建表与序

    表说明: T_EXCEL_IMPORT_DATASRC: Excel数据存储表,(使用了xmltype存储Excel数据) 部分字段说明: BUSINESSTYPE: Excel模板类型,一个Exce ...

  2. c++ float能到小数点后多少位

    float xiaoshu=0.0000000000000000000000000000000000000000000001; cout<<"xiaoshu"<& ...

  3. java中与数据库的连接

    package unitl01; import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet; ...

  4. redis-cluster 迁移过程错误记录

    因为集群内的 单点redis消耗 内存达到了14个G,所以需要增加新的节点,并将数据迁移过去,使用 redis-trib reshard ip:port A : 2105slot       14.5 ...

  5. 使用第三方框架vapor和swift 搭建本地服务器

    在网上看到一篇教程,使用vapor搭建服务端,自己记录下来备忘本文主要记录以下几点 1.配置好Vapor 2.用Swift写GET,POST方法,返回JSON数据 3.配置本地服务器,编译运行在浏览器 ...

  6. iOS开发~CocoaPods使用详细说明

    一.概要 iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用来方便的统一管理这些第三方库. 二.安装 由于 ...

  7. POJ 3414 解题报告!

    原题: Pots Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13227 Accepted: 5550 Special Jud ...

  8. 破解版windows 7(旗舰版)下安装并使用vagrant统一开发环境

    参考百度经验:http://jingyan.baidu.com/article/5553fa82c158bb65a23934be.html,事先对win7进行破解后的三个文件进行还原,否则会导致vir ...

  9. Search for a Range

    Given a sorted array of integers, find the starting and ending position of a given target value. You ...

  10. Quant的笑话

    Q) Why was the FX quant so unlucky with the ladies?A) Because he always kept his dates short. Q) Why ...