Jmeter(三十一)Jmeter Question 之 乱码解读

  众所周知,编码的问题影响着众多开发者,当然见多不怪。

  先扒了一个编码的原因,也就是为什么要编码:

  1. 计算机中存储信息的最小单元是一个字节即 8 个 bit,所以能表示的字符范围是 0~255 个
  2. 人类要表示的符号太多,无法用一个字节来完全表示
  3. 要解决这个矛盾必须需要一个新的数据结构 char,从 char 到 byte 必须编码

  Jmeter中也是存在编码(也就是常见的‘乱码’)问题。

  常见的编码格式有ASCII、ISO-8859-1、GB2312、GBK、UTF-8、UTF-16等,而GB2312、GBK、UTF-8、UTF-16格式便是常用的汉字编码格式。

  回到正主,Jmeter中的编码又是什么呢?

  

  该段内容截取至${jmeter_home}\bin\jmeter.propeties文件

  从截图中的这段注释中便可以看到。jmeter默认是以ISO-8859-1编码格式进行编码的。

  那么在GUI界面进行操作的过程中,与某些响应报文的编码格式不一致时,便会出现乱码情况。如下:

  

  响应乱码便是如此。

  解决方案:1)修改配置文件中的编码格式(上方截图所示)

       2)直接在请求处的编码格式中输入编码格式(下图示)

  

  还有一种乱码便是请求报文乱码,常出现场景:外部文件参数化。

  

  CSV文件中未定义编码格式。

  

  加入编码格式,请求重试

  

  

  还有一种乱码情况,通常在录制的情况会出现。

  具体的场景是,录制完成之后,接口的请求body data中有乱码信息,例如某些json字符串等。

  通过翻阅官方文档,是有该情况。

  body data中文乱码,是因为jmeter自3.0起,优化了body data后默认的字体(consolas)不支持中文显示;

  解决方案:在jmeter.properties中查找jsyntaxtextarea.font.family,取消注释,使用hack字体即可(当然也可以换成支持的其他字符集)

  

 

   本人也使用3.2进行了录制,部分body data中的json字符串是有这种不支持中文显示的乱码情况,不过,本人也进行调试,是不影响使用的,可以进行请求使用。

  

 

作者:紫陌花间客
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

posted @   紫陌花间客  阅读(514)  评论(0编辑  收藏  举报
编辑推荐:
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
· .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
阅读排行:
· 本地部署 DeepSeek:小白也能轻松搞定!
· 基于DeepSeek R1 满血版大模型的个人知识库,回答都源自对你专属文件的深度学习。
· 在缓慢中沉淀,在挑战中重生!2024个人总结!
· 大人,时代变了! 赶快把自有业务的本地AI“模型”训练起来!
· Tinyfox 简易教程-1:Hello World!
点击右上角即可分享
微信分享提示