Jmeter——请求响应内容乱码解决办法
前段时间,换过一次设备,重新下载了Jmeter。有一次在编写脚本时,响应内容中的中文一直显示乱码。

遇到乱码不要慌,肯定是有办法来解决的。具体解决办法,可以参考之前的博文,Jmeter——BeanShell 内置变量vars、props、prev的使用。
使用prev内置变量
在上面提到的博文中,我们是可以使用内置变量prev来处理的,Jmeter的源码如下:
/**
* Sets the dataEncoding.
*
* @param dataEncoding
* the dataEncoding to set, e.g. ISO-8895-1, UTF-8
*/
public void setDataEncoding(String dataEncoding) {
this.dataEncoding = dataEncoding;
}
既然乱码了,那设置为 UTF-8 就行。那怎么设置呢,使用 BeanShell后置处理器,示例代码如下:
prev.setDataEncoding("utf-8");
再次运行,响应内容,正常展示了对应中文值内容,问题得到解决。
修改jmeter.properties配置文件
在上面的方案中,只算是一种临时处理的办法。如果过一段时间又编写脚本,恰巧又忘记了增加后置处理器来设置编码格式,那岂不是又是乱码了。这样就折腾了。
那有没有一劳永逸的办法呢,是有的。就是直接修改 jmeter.properties 配置文件。
到jmeter的bin目录下,找到 jmeter.properties 配置文件,用高级记事本打开,找到配置项:sampleresult.default.encoding
如果没有修改过配置的情况下,这行配置是被注释了的。如下所示:
# The encoding to be used if none is provided (default ISO-8859-1)
# sampleresult.default.encoding=ISO-8859-1
我们需要将注释删掉,并且把编码格式修改为UTF-8即可。
这里需要注意的点是,修改了配置文件,需要重启jmeter才能生效。而直接增加后置处理器设置编码格式,是可以直接生效的。
重启后,那把脚本中设置编码格式的后置处理器禁用或删除掉,再次运行脚本,响应内容也可以正常展示中文了。
那以后就不会存在这种烦恼了,除非又换了设备。
Jmeter——请求响应内容乱码解决办法的更多相关文章
- Jmeter(二)响应内容乱码解决办法
Jmeter请求编码设置为UTF-8,响应内容依然乱码,可在Jmeter安装路径bin\jmeter.properties中设置默认编码为UTF-8,于是问题得以解决:
- Jmeter响应中文乱码解决办法
JMeter当响应页面没有设置编码时,默认会从jmeter.properties配置文件中sampleresult.default.encoding的配置进行设置,默认使用ISO8859-1,在配置文 ...
- Jmeter之响应结果乱码解决
场景: 在测试过程中,我们可能需要查看结果树,但是发现里面的响应数据在“Document”以外的其他表现形式下都有乱码,如下图就是设置了以Text的形式展示,响应数据包含乱码: 分析:原因是Jmete ...
- Katalon Studio之请求响应中文乱码解决方法
最近在用Katalon做接口测试过程中发现请求响应消息中返回的中文均为乱码,这是因为我们使用的系统环境在初始安装时选择的中文简体,导致windows系统默认编码格式为GBK,但是KS的编码格式是UTF ...
- LoadRunner web请求和响应中文乱码解决办法
先来认识下lr_convert_string_encoding: int lr_convert_string_encoding( const char *sourceString, const cha ...
- Katalon Studio学习笔记(二)——请求响应中文乱码解决方法
Katalon Studio接口测试发现返回的中文消息是乱码,这是因为KS的编码格式是UTF-8,因此导致中文字体出现乱码.如下图所示: 在我们的系统中添加一个名字为JAVA_TOOL_OPTIONS ...
- jsonp跨域请求360数据乱码解决办法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- JMeter:响应结果乱码解决方法
JMeter:响应结果乱码解决方法 我们经常使用jmeter做接口测试或者正则匹配 看到的响应结果存在乱码,这是小白经常会问的问题,这是因为jmeter会按照jmeter.properties文件中, ...
- LoadRunner11脚本小技能之添加请求头+定义变量+响应内容乱码转换打印+事务拆分
一.添加请求头 存在一些接口,发送请求时需要进行权限验证.登录验证(不加请求头时运行脚本,接口可能会报401等等),所以需要在脚本中给对应请求添加请求头.注意:请求头需在请求前添加,包含url类.su ...
随机推荐
- Python小游戏——外星人入侵(保姆级教程)第一章 01创建Pygame窗口 02创建设置类Setting()
系列文章目录 第一章:武装飞船 01:创建Pygame窗口以及响应用户输入 02:创建设置类Setting() 一.前期准备 1.语言版本 Python3.9.0 2.编译器 Pycharm2022 ...
- mybatisplus-sql注入器
sql注入器 使用mybatisplus只需要继承BaseMapper接口即可使用:但是有新的需求需要扩展BaseMapper里面的功能时可使用sql注入器. 扩展BaseMapper里面的功能 点击 ...
- github action 实现CI/CD
两种github action 打包.Net Core 项目docker镜像推送到阿里云镜像仓库 1.GitHub Actions 是什么? 大家知道,持续集成由很多操作组成,比如抓取代码.运行测试. ...
- python中的画图神器——turtle模块
turtle库的基础命令介绍(1)画布画布cancas是绘图区域,可以设置它的大小和初始位置 turtle.screensize(1000,600,'red') 大小的设置 turtle.setup( ...
- 完全彻底的卸载MySQL5.7.35
最开始接触计算机的时候关于MySQL卸载的这个问题,导致我重装了一次系统.就在今天我又遇到了同样的问题. Setp①: 想要安装新的数据库软件必须要先彻底且干净的删除掉以前的数据库. 第一步要做的是停 ...
- 对表白墙wxml文件解释
一.index.wxml 1.代码 1 <view class="Beijingse" style="height: 100%;"> 2 <v ...
- Java的线程状态
在我们平时写code的时候,经常会使用到多线程.其中线程所处的状态就是我们需要进程思考的问题. 线程有哪些状态 NEW: 一个线程刚被创建,但是没有被使用就是处于这个状态 RUNNABLE: 一个线程 ...
- UEC++ 代理/委托
代理: 代理可以帮助我们解决一对一或是一对多的任务分配工作.主要可以帮助我们解决通知问题.我们可以通过代理完成调用某一个对象的一个函数,而不直接持有该对象的任何指针. 代理就是为你跑腿送信的,你可以不 ...
- Logstash:Grok filter 入门
转载自: https://blog.csdn.net/UbuntuTouch/article/details/105922198 Logstash模式:https://www.elastic.co/g ...
- 第六章:Django 综合篇 - 2:核心配置项
Django的默认配置文件中,包含上百条配置项目,其中很多是我们'一辈子'都不碰到或者不需要单独配置的,这些项目在需要的时候再去查手册. 强调:配置的默认值不是在settings.py文件中!不要以为 ...