美文网首页
jmeter进行dubbo接口测试

jmeter进行dubbo接口测试

作者: 陈芝麻烂谷子的事 | 来源:发表于2022-04-22 10:35 被阅读0次

使用JMETER进行DUBBO接口测试

1. 分享背景:

dubbo接口进行接口的访问测试

2.Dubbo插件的安装:

(1)下载地址:

https://github.com/thubbo/jmeter-plugins-for-apache-dubbo

image.png

(2)存放路径:

…\apache-jmeter-5.2.1\lib\ext

(3)重新启动jmeter即可。

3. Dubbo接口测试的使用:

(1) 新建线程组“

右键testplan – 添加 – 线程(用户) - 线程组

(2) 增加dubbo取样器:

右键线程组 – 添加 – 取样器 – dubbo sample

(3) Protocol介绍和使用:

注册协议,包括zookeeper、multicast、Redis、simple

我们使用泛化调用,不需要考虑他的注册中心。

<u>泛化调用是什么?服务的消费者直接调用接口方式(不需要引入服务接口),也可以实现服务功能的使用</u>。

(4) Address:

注册地址,目前我们使用dubbo直连,直接写IP+PORT即可

(5) Timeout:

超时时间,正常情况下默认即可,如jmeter返回超时错误,接口功能正常,可适当延长超时时间。

(6) Version:

版本号,不需要指定版本号

(7) Interface:

接口名称

(8) Method:

方法名称

(9) paramType:

参数类型:参数支持任何类型,包装类直接使用java.lang下的包装类,类型使用:int、float、shot、double、long、byte、boolean、char,自定义类使用类完全名称

我们目前使用的类型:java.util.Map

(10) paramValue:

参数值


image.png

4. 实战演示:

并发接口测试实现演示:

注册接口正常情况下同一个id/手机号/邮箱/用户名等唯一信息只允许存在一次,同一个用户并发提交注册不会出现重复id/手机号/邮箱/用户名的情况。

(1)接口信息:

接口名:用户注册接口

接口路径:com.qiming.qqzw.customer.api.IRegisterProvider.register()

接口功能:注册

接口参数:

image.png

(2) 环境信息:

地址:172.31.132.***

端口:28465

影响数据库:172.31.63.***:3306/mysql1_10/usercenter_user

(3)用例设计:

测试内容:唯一序列号校验

前置条件:准备从未注册过的手机号;10个用户

用例步骤:10个用户使用同一个未注册过的手机号提交注册。

检查点:

1.接口仅有一个返回成功,其他接口返回错误提示,未注册成功

2.数据库存在新增数据,有且仅有一条。

(4)jmeter实现:

1.添加线程组:右键点击Test Plan – 添加 – 线程组

2.在线程组下添加dubbo取样器:右击点击线程组 – 添加 – 取样器 – Dubbp Sample

3.配置Dubbo Sample:

Address:172.31.132.***:28465

Version:空

InterFace: com.qiming.qqzw.customer.api.IRegisterProvider

Method: register

paramType:java.util.Map

paramValue: {"clientType":"ios","code":"111111","appCode":"qiuqiu","type":"mobile_code","account":"17888888881"}

image.png

(5)添加断言:用于判断接口是否正常返回

1.右击dubbo取样器 – 添加 - 断言 - 响应断言:

image.png

(6)接口掉通调试:保证当前脚本的正确性

image.png

(7)设计测试场景,增加同步定时器

1.增加同步定时器,用于模拟并发请求:

右击线程组- 添加 – 定时器 – 同步定时器,设置模拟用户数量5(可根据需求或与研发沟通设定此数值),设置超时时间0(代表一直等待)

image.png
  1. 设置线程组中线程数5,循环次数1次。
image.png

(8)参数化:为方便多次测试,可将改动频繁的参数参数化

1.右击线程组-添加- 前置处理器 – 用户参数,设置如下:

image.png

2.更改传参设置参数化的值:

image.png

除此之外,还可以通过脚本的方式随机生成手机号,感兴趣可以自行去探索一下!

(9)执行脚本:

最终的脚本内容如下:

image.png

点击执行按钮执行脚本,查看结果:

image.png

测试结果仅有一个接口返回成功,其他接口均返回错误提示。

5. 结语:

以上为使用jmeter进行dubbo接口测试文档的全部内容,另外根据以往的测试经验总结了一下类似于提交、上传、报名等即此接口特殊的测试点如下:

1.单用户接口并发下,带有唯一序列号的字段是否会出现重复。

2.单用户或者多用户接口并发下,新增数据是否正常,是否出现重复新增。

3.多用户接口并发下,拥有名额限制的功能,是否超出正常限制。

4.单用户接口并发下,扣减功能是否出现多扣多减情况。

5.单用户或者多用户接口并发下,接口是否出现异常报错。

以上测试点仅供参考,实际的场景设计还需要根据业务需求和后端设计进行分析得出。

相关文章

  • jmeter进行dubbo接口测试

    使用JMETER进行DUBBO接口测试 1. 分享背景: dubbo接口进行接口的访问测试 2.Dubbo插件的...

  • jmeter之dubbo测试

    jmeter之dubbo测试 闲暇之余玩了玩jmeter 发现了jmeter可以直接测试dubbo接口 不用再写代...

  • 用Jmeter进行Dubbo接口测试

    节点角色 Provider: 暴露服务的服务提供方Consumer: 调用远程服务的服务消费方Registry: ...

  • 31 Jmeter接口测试总结

    Jmeter接口测试总结 前言: 本文主要针对http接口进行测试,使用Jmeter工具实现。 Jmeter工具设...

  • 关于jmeter测试dubbo接口方式

    说明: 本文章介绍如何使用jmeter测试dubbo接口,涉及如下两种方式 1.使用官方dubbo版本包测试dub...

  • jmeter 参数化

    jmeter参数化 背景 进行接口,性能测试进行参数化是必然要考虑的场景,自从上次使用了jmeter进行接口测试后...

  • jmeter测试dubbo接口

    一、Dubbo简介 dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服...

  • jmeter 测试dubbo接口

    1、Jmeter简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压...

  • jmeter测试dubbo接口

    1、安装插件下载地址:https://github.com/dubbo/jmeter-plugins-for-ap...

  • 目前技术缺陷

    dubbo接口测试方案?【急】【jmeter测试】 简单灰度上线方案?【急】【运维walle】 简单的业务监控方案...

网友评论

      本文标题:jmeter进行dubbo接口测试

      本文链接:https://www.haomeiwen.com/subject/ujzosrtx.html