JMeter 完成 Dubbo 接口的测试

本文详细介绍了如何通过JMeter的Dubbo插件进行Dubbo接口的测试。首先从GitHub下载最新版的Dubbo插件,并将其jar包放入JMeter的lib/ext目录下。接着,重启JMeter后,在采样器中可以看到DubboSample。然后,配置接口信息,包括服务提供者地址和方法等。通过直连方式调用接口,成功返回结果,验证了Dubbo接口测试的有效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JMeter 默认是不支持 Dubbo 接口测试的,但是我们可以通过拓展的插件或 jar 包实现此功能。

JMeter 插件拓展

1.1 插件下载

测试 Dubbo,我们需要下载 Dubbo 的插件,在 Apache 的 Dubbo 插件 GitHub 中可以找到:

https://github.com/thubbo/jmeter-plugins-for-apache-dubbo
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-E9vvB6gY-1662475811669)(upload://b9tU5UdiVjwqLQ0hPqvmmOFWzU2.png)]
点击进入,这里我们选择当前的最新版本 2.7.8 进行下载。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EldQOFXc-1662475811671)(upload://3BmpLuWcaRvdQMnZwB2ScD9yaml.png)]

1.2 插件安装

插件下载好后只需要将 jar 包放入到 jmeterlib 下的 ext 文件夹即可。

由于我的 JMeter 是使用 Mac 的 Homebrew 安装的,所以我的路径为 /usr/local/Cellar/jmeter/5.3_1/libexec/lib/ext,具体的根据自己的安装路径寻找即可,如下可以看到我的 jar 包已放入。

 % pwd
    /usr/local/Cellar/jmeter/5.3_1/libexec/lib/ext
    % ls | grep jmeter-plugins-dubbo-2.7.8-jar-with-dependencies.jar
    jmeter-plugins-dubbo-2.7.8-jar-with-dependencies.jar

1.3 重启 JMeter

重启 Jmeter 后再采样器可,以看到 Dubbo Sample 的存在。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wrYoKOtg-1662475811671)(upload://hQdwH8uNOke8IeGeBC3rNoAxy0x.png)]

测试接口准备

这里在本地准备好了一个 Dubbo 的测试 demo 供演示使用,provider的方法如下,直接调用方法,返回一个用户信息列表:

  public class UserServiceImpl implements UserService {
    
        @Override
        public List<UserAddress> getUserAddressList(String userId) {
            UserAddress userAddress1 = new UserAddress(1, "杭州市西湖区", "1", "Tester1", "12345678", "Y");
            UserAddress userAddress2 = new UserAddress(2, "杭州市余杭区", "2", "Tester2", "12345678", "N");
            return Arrays.asList(userAddress1, userAddress2);
        }
    }

通过 dubbo-admin 可以查到当前的服务已经提供完成:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZTHwh05M-1662475811672)(upload://duVkkjAnr2oyEzG43yqI3EAvXdc.png)]

测试 Dubbo 接口

这里选择以直连的方式进行接口的测试,也就是利用了 Dubbo 的泛化调用的方式,不需要知道注册中心,只需要知道服务接口,方法名以及服务提供者的地址即可。关于 Dubbo 的泛化调用,后续再单独介绍。

3.1 修改配置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aqoYoQ9G-1662475811672)(upload://ydniiTPstBirXj0nXIqL6xzGWsX.png)]
打开 Dubbo Sample 后我们会看到如上图的配置(可能根据版本的不同会有所变化),如果遇到了相同的情况,将 Version 中的"1.0"删除,否则会影响我们的传参,然后再填入接口的信息即可,如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-79Sbt0tW-1662475811672)(upload://3NdDpp9KSvsPOWGvTyiE9Dll4.png)]

  • 注意:这里要注意入参的类型要按照 Java 的数据类型填完整的类型格式。

3.2 结果展示

执行测试,查看测试结果如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HATm8WZl-1662475811672)(upload://gh9x89aM8PgKiNxdEACX8QGOpni.png)]
可以看到接口成功响应,结果成功返回,测试 Dubbo 接口成功。

更多技术文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值