jmeter导入csv文件数据乱码,使用函数拼接请求参数解决

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

今天上级要我把公司的机器远程升级一下,但是我看了一下公司管理后台好像没有批量升级的功能或demo,这要是一台台升级得耗费不少时间,jmeter就有自动化的功能就想着利用jmeter能不能代替人工完成这个工作,然后发现有很多坑等着我踩比如:导出来的csv文件数据乱码(其实是转换成科学计数法了)导致jmeter取得参数错误。


提示:以下是本篇文章正文内容,下面案例可供参考

一、先准备要升级的设备信息

我直接在数据库查寻需要升级的设备信息,然后导出为csv文件(因为需要用csv文件做参数化)。jmeter导入csv文件数据乱码,使用函数拼接请求参数解决

二、抓取远程升级这个接口需要的参数有哪些

直接浏览器f12看看这个接口的方法以及参数
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
其实就两个参数,url这个参数是固定的直接请求参数里面写死就可以了,前面sn号就是我第一步导出来的数据。

三、jmeter发送请求

1.添加csv数据文件

jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
其他的顾名思义,就注意这个变量名在请求参数里面是如何应用的例如我这个变量名是sn的话,在请求参数里${sn}引用。

2.添加http请求

jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
这边看到我们的请求参数值和我前面说的${sn}不一样,那是因为直接引用的话我们csv数据是科学计数法(数据过长csv文件就会自动转换成科学计数法,改数据格式也不能保存),jmeter识别是不会转换的,导致接口一直调不对,我再网上查了很多方法都没用,只能自己想办法解决,发现jmeter有个函数v能实现字符串的拼接。
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
因为我们设备的sn前面的数字都是一直的我把这些数字提取下来通过这个函数写死,那我这个sn去掉这些数字就不会转换成科学技术法了。(网上说的是如果数字大于12位,它会自动转化为科学计数法)
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
把csv文件做了一些分列处理后最后的数据
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
前面的函数生成工具在点了生成之后,最后的变量名会自动复制到剪贴板里面
我的是:
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决
记得把后面的,号去掉。

3.执行

在线程组里面设置循环次数(csv文件里有多少条数据就填多少次)
jmeter导入csv文件数据乱码,使用函数拼接请求参数解决

jmeter导入csv文件数据乱码,使用函数拼接请求参数解决

可以看到执行结果是成功了,传的参数也没有问题。

上一篇:MySQL存储引擎与基本数据类型


下一篇:前端必会的“防抖”和“节流”方法