一、jmeter文件参数化
1.最近在做的项目需要进行接口测试,涉及到多入参的验证,手动去验证太麻烦了,所以想到用jmeter来做。在做的途中发现了jmeter在识别.csv文件时会出现中文乱码的情况,以及响应数据中文也会乱码,于是便花费了一些时间把这两个问题解决,希望能帮到面临同样问题的同学,不胜荣喜。
2.好的,我们来复现发现问题的情景。首先是先创建一个线程,加入请求,设置好参数,添加CSV data set config,于是就编辑好以下请求脚本,点击运行,请求失败,查看请求,发现请求中文参数是乱码的。
为什么呢?是参数化TXT文件没有改成utf-8文件3.类型吗?是jmeter上CSV里file encoding没有选好文件类型?还是其他什么问题???
上网查了些资料:
1)修改jmeter.properties文件,sampleresult.default.encoding=UTF-8,把前面#去掉。这个办法我试过,有用的,但奇怪的是它对.CSV文件的中文识别好像不起作用。
2)手动在jmeter上CSV里file encoding框里输入GBK或者GB2312,我这里还是使用原来的文件,结果还是没用。
3)使用Excel表格作为传参文件,保存格式为.csv,然后在jmeter上更换传参文件,file encoding框里输入GBK或者GB2312,运行后,请求没有出现中文乱码。
3.请求体中文乱码问题得到解决,但又出现新的问题。请求中文数据在jmeter上显示没有问题,但是在传输是已乱码“???”的形式传输的,那还是jmeter配置文件,真是一波三折,跟中文乱码杠上了。
1)查了资料,参考Jmeter传输Json参数,中文乱码问题_wanglijia26的专栏-CSDN博客_jmeter请求参数中文乱码
头部信息和默认值与下图配置一样,参数化那里写成gbk或者gb2312(前提是你请求参数中文乱码,如果请求参数没问题,用utf-8也行)
然后,运行,请求和响应全没问题,OK了