测试开发全栈之Python自动化 阿里开源 Dubbo 接口如何测试?
1.Dubbo 简介
Dubbo 是阿里巴巴公司开源的一个 Java 高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成,随着近几年微服务架构的兴起,因为其理念很契合微服务,在国内有着比较广泛的用户群体。
2.Dubbo 特点
特点:高性能、轻量级、开源
面向接口代理的高性能 RPC 调用
互联网服务发展:
ORM(单应用)-MVC(应用分层)-RPC(分布式服务,应用和服务分开)-SOA(面向服务,服务统一管理)
3.Dubbo 基础架构
节点角色说明:
Provider:暴露服务的服务提供方(开发人员写的代码、理解为接口)
Consumer:调用远程服务的服务消费方(telnet,jemter 插件)
Registry:服务注册与发现的注册中心
实现成本比较低就是 zookeeper(一个分布式的,开放源码的分布式应用程序协调服务)
生活中实例:美团外卖是很多商家的注册中心
Monitor:统计服务的调用次数和调用时间的监控中心
Container:服务运行容器
4.Dubbo 接口测试
dubbo 接口测试方法:
dubbo 接口测试的关键在于搭建消费者,那么搭建消费者有几种方式:
Telnet 、Jmeter 插件、Python 第三库与泛化调用
1.Telnet(打开 telnet 方法)
Win7 控制面板
程序和功能
打开或关闭 Windows 功能
勾选 Telnet 服务器” 和 “Telnet 客户端” 两项
启动 dubbo 服务接口
打开 cmd 命令行:telnet 127.0.0.1 30001 ,然后回车,命令 ls,可以获取服务接口的列表
Ls -l 服务名 获取所有的方法名称,获取参数类型
接下来就可以进行 dubbo 接口请求,请求方式:invoke 服务名.方法名 (参数)
可以看到,调用 dubbo 接口成功,而且获得了响应值
2.通过 jmeter 插件调用 Dubbo 接口实现请求
3.基于 python 也是可以调用的,那么也是需要第三库来支持的。
利用 dubbo 的泛化调用特性,把它封装成一个 http 服务,再通过 python 去请求这个 http 接口就行了
文章首发于公众号:程序员一凡