在测试的过程中传入中文测试,乱码问题

1、get请求传入中文参数address:中国云南省

request请求中已经正确显示参数(可能跟我之前配置过有关系),如果没有正确显示,在http取样器后面新建一个BeanShell Sampler(并列关系)

scrip里编辑代码:prev.setDataEncoding("utf-8");再次运行就可以,不用重启jmeter

再查看response响应信息 address返回值是Unicode编码的

在http请求中添加后置处理器BeanShell PostProcessor,scrip中编辑代码:

  1. String s=new String(prev.getResponseData(),"UTF-8");
  2. char aChar;
  3. int len= s.length();
  4. StringBuffer outBuffer=new StringBuffer(len);
  5. for(int x =0; x <len;){
  6. aChar= s.charAt(x++);
  7. if(aChar=='\\'){
  8. aChar= s.charAt(x++);
  9. if(aChar=='u'){
  10. int value =0;
  11. for(int i=0;i<4;i++){
  12. aChar= s.charAt(x++);
  13. switch(aChar){
  14. case'0':
  15. case'1':
  16. case'2':
  17. case'3':
  18. case'4':
  19. case'5':
  20. case'6':
  21. case'7':
  22. case'8':
  23. case'9':
  24. value=(value <<4)+aChar-'0';
  25. break;
  26. case'a':
  27. case'b':
  28. case'c':
  29. case'd':
  30. case'e':
  31. case'f':
  32. value=(value <<4)+10+aChar-'a';
  33. break;
  34. case'A':
  35. case'B':
  36. case'C':
  37. case'D':
  38. case'E':
  39. case'F':
  40. value=(value <<4)+10+aChar-'A';
  41. break;
  42. default:
  43. throw new IllegalArgumentException(
  44. "Malformed \\uxxxx encoding.");}}
  45. outBuffer.append((char) value);}else{
  46. if(aChar=='t')
  47. aChar='\t';
  48. else if(aChar=='r')
  49. aChar='\r';
  50. else if(aChar=='n')
  51. aChar='\n';
  52. else if(aChar=='f')
  53. aChar='\f';
  54. outBuffer.append(aChar);}}else
  55. outBuffer.append(aChar);}
  56. prev.setResponseData(outBuffer.toString());

 再次执行,查看响应结果,address显示乱码

打开jmeter.properties(jmeter的bin目录下)把默认的编码改成utf-8,并把注释取消保存,重启jmeter

再次运行,响应信息显示正确

2、Post请求传递中文参数

响应乱码,修改post请求,Content encoding设置成utf-8

再次运行:参数显示Unicode编码,

post请求再次建立后置处理器BeanShell PostProcessor内容与上面一致

再次运行成功

 

jmeter中文乱码及Unicode转中文的更多相关文章

  1. RoportNG报表显示中文乱码和TestNG显示中文乱码实力解决办法

    最近在进军测试自动化框架学习阶段,但无意间总是会伴随小问题的困扰,比如中文乱码,而导致显示总是不舒服,个人觉得,就一定要解决,似乎有点点强迫症.所以遇到RoportNG报表显示中文乱码和TestNG显 ...

  2. ReportNG报表显示中文乱码和TestNG显示中文乱码实力解决办法

    最近在进军测试自动化框架学习阶段,但无意间总是会伴随小问题的困扰,比如中文乱码,而导致显示总是不舒服,个人觉得,就一定要解决,似乎有点点强迫症.所以遇到ReportNG报表显示中文乱码和TestNG显 ...

  3. ZTree async中文乱码,ZTree reAsyncChildNodes中文乱码,zTree中文乱码

    ZTree async中文乱码,ZTree reAsyncChildNodes中文乱码,zTree中文乱码 >>>>>>>>>>>&g ...

  4. 【转】cygwin中文乱码(打开gvim中文乱码、安装svn后乱码)

    想用cygwin less看log,可能包含德语.格式是乱的,很多类似"ESC"之类的乱码. 结果这个解决方案似乎也不错,有排版,有颜色高亮. ------------------ ...

  5. jmeter返回结果是乱码及Unicode转中文

    1.结果树中有乱码的处理方式 到bin目录下面修改jmeter的配置文件 使用jmeter进行压测时,如果响应数据的返回结果有乱码,则修改jmeter.properties文件中的该字段的值改为utf ...

  6. eclipse 同一个package 有的文件 中文乱码,有的文件中文正常

    1.这是编码格式导致的. 先在对应包名上右击,选择属性,将包内所有的文件都设置为GBK格式, 然后查看每个文件,如果有乱码,则将这个文件的编码格式单独设为 UTF-8 2.有个项目使用百度语音做开发, ...

  7. phpstorm配置git并解决Terminal 中文乱码(Unicode 编码)的方法

    前言:在使用PHPstorm的时候,需要用到terminal,主要还是用这个操作git,但是在使用这个的时候会发现,代码里所有中文都是乱码状态,不利于使用,下面就来看看怎么解决这个问题 一.先在php ...

  8. 12.QT4.7.4-解决WIN平台和Linux平台中文乱码,QLineEdit右击菜单中文显示

    1.解决Win平台中文显示 1.1首先解决win平台上中文显示乱码问题 1)首先查看qt creator的编码格式 通过->编辑->选择编码 查看. 2)如果qt creator的编码格式 ...

  9. php如何分割字符串?php mb_substr分割字条串,解决中文乱码问题,支持分割中文! (转)

    因为网站开发需要,必须有一项功能可以把字符串一个一个分割开来,并且转换为数组. 刚开始用“str_split函数”在实验分割中文字符时就出现了乱码. 蚂蚁学院经过一翻研究,最终发现以下方法可以有效分割 ...

随机推荐

  1. 【循环数组的最大字串和】Maximal-sum Subsequence

    [循环数组的最大字串和]Maximal-sum Subsequence PROBLEM 题目描述 给一个 N×N 的矩阵 M,可以取连续的一段数(必须是横着或者竖着或者斜着,这个矩阵是循环的,具体如下 ...

  2. laravel之模型Model

    模型Model: 在控制器中调用:

  3. Python练手例子(1)

    1.有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. #本人的运行 ...

  4. 测试自动化学习3-python3简单操作

    1.列表操作 增 stu = []stus.append('lili') #在list的末尾增加一个元素 stus.insert(9,'yjk') #在指定的位置插入元素, 查 print('单个取, ...

  5. IEnumerable、IEnumerator、ICollection、IList、List的继承关系及简单使用

    IEnumerable和IEnumerable<T>接口在.NET中是非常重要的接口,它允许开发人员定义foreach语句功能的实现并支持非泛型方法的简单的迭代,IEnumerable和I ...

  6. Collections类

    1:一个类对象之间的比较两种方法 1)实现Comparator<String>类并且从写Comparator类中的compare方法, public class A implements ...

  7. Sessions Hang on row cache lock

    Sessions Hang on "row cache lock" (dc_objects) While Creating & Dropping a Table Concu ...

  8. Jmeter跨线程组传递参数

    Jmeter的线程组之间是相互独立的,各个线程组互不影响,所以线程组A中输出的参数,是无法直接在线程组B中被调用的. 但有时候为了方便,可以把不同模块接口放在不同线程组,就涉及不同线程组传参问题,比如 ...

  9. HTTPS请求

    hhtps:HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的 HTTP通道,简单讲是HTTP的安全版,即 ...

  10. list的基本操作实现

    有关list的相关实现,主函数没有写很多,每个部分目前没发现有问题: #include <iostream> #include <stdio.h> using namespac ...