Jmeter调用dubbo接口(使用官方插件)

       最近使用工作中使用jmeter调用dubbo接口进行接口测试,在实际尝试中遇到了一些问题,这里把这些问题整理了出来,特编写此文档,用作记录,同时分享给有需要的童鞋。

      从我最近一段时间的测试来看,Jmeter调用dubbo接口主要有两种方式(可能存在我不知道的方式,如哪位知道,欢迎指点),一种是通过java调用实现;一种是通过Jmeter的dubbo插件来实现。

   通过java调用实现,感觉这个现在使用比较广泛。现在通过百度得到的结果很多,我基本上是参考网上的教程来做的,中间遇到的问题不多,但目前仍有一个问题无法解决,这里也写在本篇文章中,哪位看官知道解决办法,请指点一下,非常感谢。参考链接:https://blog.csdn.net/qi_lin7/article/details/53759528。  未解决问题如下图,通过jmeter调用java请求,可以正常调用到服务端 ,但是结果树获取不到请求数据。

        本文重点介绍Jmeter通过dubbo插件来完成dubbo接口的测试。这种方法还是比较新的,阿里是在18年3月才提供官方的插件,当然现在网上也是可以找到一些相关的文档,我最初是参考下面说明来操作的:https://blog.csdn.net/cyjs1988/article/details/84258046。  大家在实际应用中,还建议参考Jmeter的官网,官网链接:https://github.com/dubbo/jmeter-plugins-dubbo

说明一下相关的参数:

Protocol:所用协议   Protocol=none为直连方式;Protocol=zookeeper使用zk注册中心;Protocol=multicast为广播方式;Protocol=redis使用redis注册中心;Protocol=simple使用simple注册中心;参考官网信息即可

当使用zk,address填入zk地址(集群地址使用","分隔),使用dubbo直连,address填写直连地址和服务端口

version:服务版本,与服务提供者的版本一致   这个指的是服务端@service的version内容,需要跟对应dubbo服务的研发者获取

 group: 服务分组,当一个接口有多个实现,可以用分组区分,必需和服务提供方一致    这个指的是服务端@service的group内容,需要跟对应dubbo服务的研发者获取   特别注意:如果是zookeeper模式,这个值必须得有,如果开发没有这个值,则会出现找不到provider的情况

 如果协议为zookeeper,且正确填写了aaddress 和group,可以直接点击“Get Provider List” 按钮,获取接口列表

Interface:待测试的接口名,需要填写全路径  Method:待测试的方法:正确填写方法名即可

paramType:参数类型,参考官网的参数对照表https://github.com/dubbo/jmeter-plugins-dubbo/wiki/ParameterComparisonTable

实际工作中多数为一个类,这里需要填写类的全路径,参考api的参数全路径即可。

     接下来分享一下我按照dubbo插件调用时遇到的问题:

1、调用报错 No provider available —— 原因,开发的service 没有明确填写group,导致通过注册中心找不到服务

 

 

 

 

 

  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值