• 0
  • 0
分享

1、MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛,本文简单介绍下怎么使用JMeter对MQTT协议做性能测试
2、要对MQTT协议进行测试,需要下载一个mqtt-xmeter-jar-with-dependencies.jar插件,放置在JMeter的lib/ext目录下


一、添加线程组
1. 添加线程组,Jmeter执行是通过线程组进行驱动的,测试计划必须最少有一个线程组,选中测试计划,点击右键,添加》线程》线程组

1.png

二、依次添加如下请求
1.  添加创建连接请求-选中线程组,点击右键,添加》取样器》MQTT Connect

2.png

2. 该请求的作用是进行连接,本次使用本机开启的MQTT服务进行测试,所以ip为127.0.0.1,端口默认1883

3.png

3. 添加发布请求-选中线程组,点击右键,添加》取样器》MQTT Pub Sampler

4.png

4. 该请求作用是发布消息到服务器,只需要输入主题、发送消息类型、发送消息内容即可

6.png

5. 添加订阅请求-选中线程组,点击右键,添加》取样器》MQTT Sub Sampler

7.png

6. 该请求作用是用来订阅发布的消息,只需要输入主题名称,即可订阅

88.png

7. 由于我们测试过程中一般只需要连接一次,所以本次还添加一个仅一次控制器,该控制器的效果就是一个线程只执行一次,不管执行多少次循环,右键线程组》添加》逻辑控制器》仅一次控制器

9.png

8. 添加查看结构树,右键线程组,添加》监听器,查看结构树,该组件的功能是查看每个请求的具体请求参数和响应结果

10.png

三、执行测试

1. 点击执行案例,执行开发好的脚本,结果如下:

1.png

2. MQTT后台发布记录

2.png


本文为51Testing经授权转载,转载文章所包含的文字来源于公众号:jmeter相关技术交流。如因内容或版权等问题,请联系51Testing进行删除。原文链接:https://www.jianshu.com/p/96ecba4031f5。


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   前言  一般在面试的时候,经常会被问到关于什么是cookies、session、token,大多数面试官可以通过这几个概念基本上了解到你对接口请求方面是否了解或者工作中掌握的熟练程度。  看似很小的问题,但是背后却藏着大大的阴谋,今天跟着小编一起来了解下到底什么是cookies、session、token。  http无状态  我们都知道目前的http的协议是超文本传输协议,是属于服务器传世超文本到本地浏览器的传送协议,但是很多都不清楚http的无状态是什么意思。  其实无状态协议就是类似客户端发送一次http请求完成后,客户端再次发送一次http请求后,http协议不清楚第一次发送的和第...
            0 0 1092
            分享
          •   埃森哲对敏捷测试的定义(与维基百科的定义基本一致)大概如此:敏捷测试是遵从敏捷软件开发原则的一种测试实践。敏捷开发模式把测试集成到了整个开发流程中而不再把它当成一个独立的阶段。因此测试变成了整个软件开发过程中非常重要的环节。敏捷测试包含了具备专业技能测试人员在内的跨职能团队,这使得这种组合式的团队能更好的交付价值,满足项目的业务、质量和进度目标。  从定义中可以看出敏捷测试主要的核心内涵有三个:  1. 是遵从敏捷开发的原则(强调遵守)  2. 测试被包含在整体开发流程中(强调融合)  3. 跨职能团队(强调协作)  除此之外,敏捷测试用到的基本测试方法和技术与传统测试是一样的。  敏捷测...
            12 12 1675
            分享
          • 一、前言相信不少,应该说绝大数的测试同学都遇到过这样的场景,上线出现了BUG,被质问:为什么没测出来!测试怎么测得?到底会不会测?这对测试来说是灵魂拷问级别不好回答的问题了。那么我们遇到类似这样的提问该如何回答、解决呢?二、如何回答和解决其实当遇到线上出现问题的时候,不管这个问题是谁的锅, 先以解决问题为主, 先复现问题, 再配合开发调试定位问题进行修复, 然后测试完成进行紧急的修复上线才是最应该做的事情!这个时候也不要进行任何甩锅的操作,也不要默不作声的不说话。可以回答说:我们会在这个问题修复上线后进行复盘,找出问题出现的原因,如果是测试团队的问题,我们会主动承担责任并作出总结,避免下次再犯...
            13 12 2433
            分享
          •   送你一套免费的性能测试框架搭建的课程!省下的300块,去吃一顿热气腾腾的火锅吧!点击下方链接,答问卷,领课程~链接:http://vote.51testing.com/  作为开软件开发从业者,接口调试是必不可少的一项技能,在这方面 Postman 做的非常出色。但是在整个软件开发过程中,接口调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高效完成,比如:接口文档定义、Mock 数据、接口自动化测试等等。Apifox 就是为了解决这个问题而生的。  接口管理现状  一、常用解决方案  1、使用 Swagger 管理接口文档  2、使用 Postman 调试接...
            0 0 1315
            分享
          • 1、引言在日常工作中,我们总是需要操作linux进行日志的查看,以确定报错原因。并且,作为查看日志的方式,我在面试的过程中,也会经常问求职者;但是,绝大部分的求职者就知道 cat 命令, 技术稍微好一点的可能会了解 实时查看的 tail命令。其他的方式,就很少了解了。今天,我就整理一下,关于linux的实时查询的就是方式。2、tail2.1 单文件查询tail 最常用的 :#实时查询info.log文件200条信息 tail  -f 200 info.log如果文件更新频次很快,无法及时捕捉信息, 可以与grep组合使用#查询info.log文件中&nb...
            1 0 1562
            分享
      • 51testing软件测试圈微信