Loading...
墨滴

我去吹吹风

2021/06/08  阅读:49  主题:山吹

给前端小姐姐写的mock数据小工具

前言

在工作中能够mock数据应该是程序员的必备技能了吧,面试也会问到一些。不就是写个循环的脚本,启动一下服务就行了吗。

嗯,说起来简单,那实际真有这么简单吗。嗯,好像还真有。 对于python程序员来说,真的也就是几行代码的事。例如:

Mock具体场景大致有这些:

1. 前后端联调使用,通过事先约定接口规范,使前端不依赖后端服务,独立开展工作

2. 使用Mockserver屏蔽无关的真实服务,从而专注于要测试的服务

3. 破除第三方依赖,避免调用第三方收费服务等。 这个场景应该还挺多的,很多时候都会调用第三方服务。效率优先,我们需要先自己Mock服务,把功能做出来,然后才是调用第三方的服务或者跟第三方联调。

Mock工具有那些呢:

还是蛮多的哦。前端有easymock,cypress,也可以使用nodejs或者任何一门后端语言。直接向某个接口发送请求就可以了。没事多去GitHub上转转,一大把的,拿来修改下就可以用了。

说下原因

想做个Mock服务是很久的事了,可是刚入职我司的时候这活被开发抢了去,着实让人伤心。好不容易一次锻炼写代码的机会就这么错过了。

哎,这机会一等就是几年啊。  最近在测试MQTT服务,新增了协议,以前开发的那个Mock工具换掉了。换就换吧也没啥的。但是呢,csv文件里面有一段十几位的数字。保存不好就会导致模拟不出来数据。总之,这个东西搞烦我了。

今天实在忍无可忍,也可能是责任心什么的突然就上来了吧。 想起来jmeter里面有这么一个插件,就试验了一下(python也可,有机会再来一期)。

嗯,还真行。好吧,让我一起来实现它吧。

MQTT介绍

MQTT是专为移动互联网(Mobile Internet)、物联网(IoT)设计的超轻量级消息协议,用于连接移动端与云服务双向通信,广泛应用于各种应用领域,如端向云汇报状态、云向端推送消息、端向端发送消息(即时聊天)等场景。

前提条件

  1. 有可供测试访问的MQTT服务

  2. 已安装JMeter 5.x版本(我用的是5.4.1,目前是最新版了)

步骤1:安装MQTT插件

第1步:下载 mqtt-jmeter插件:mqtt-xmeter-1.0.1-jar-with-dependencies.jar。

第2步:拷贝插件JAR包到JMeter安装目录的lib/ext/子目录下。

步骤2:本地编辑JMeter脚本

第1步:打开jmeter,新建脚本

第2步:新建线程组

第3步:添加仅一次控制器

只连接一次,以后一直发送消息

第4步:建立MQTT连接

ip修改为MQTT服务的即可。有的是需要用户名和密码验证的,这个根据你的需要填写即可。

第5步:添加察看结果树

第6步:点击运行

简单的调试一下,竟然成功了。

步骤3:脚本配置发布消息内容

第1步:添加一个MQTT Pub Sampler

注意一下,我们这里事在线程组下面添加的哦。

第2步:填写发布的信息

第3步:调试并验证

MQTT.fx 是目前主流的mqtt客户端,可以快速验证是否可以与IoT Hub 服务交流发布或订阅消息。

最终呈现的效果

使用的时候发现点问题,一次出现了大量的发布消息。怎么办呢,加个定时器吧。我又想在一次连接的基础上循环发布消息,那就再加个while控制器吧。ok,问题解决,继续飞快的干活吧。

我去吹吹风

2021/06/08  阅读:49  主题:山吹

作者介绍

我去吹吹风