JMeter实战-乱码解决方法
我们在使用JMeter的过程中,有时候会要到乱码的问题。原因应该是响应页面没有做编码处理,jmeter默认按照ISO-8859-1编码格式进行解析而服务器又是按照UTF8编码进行进行解析的。我们需要处理成同一种编码格式才不会出现乱码,解决思路为:如果请求中有中文信息导致乱码,则在请求中处理为UTF8。如果是响应有中文信息导致乱码,则使用Bean Shell后置处理程序进行处理即可。具体实现方式如下:
一、新增的时候出现乱码
方法一:
添加HTTP请求时在Content encoding后填入编码:utf-8,也可以通过添加HTTP 请求默认值控制器的内容编码中添加UTF8
看一下结果:没有乱码了
注:该方法针对请求包含中文的时候使用,如果响应的时候有中文是无法解决乱码问题的。
方法二:
在请求中加一个BeanShell前置处理器,在script中加入:prev.setDataEncoding("utf-8");
目的还是修改请求数据编码格式为utf-8,同方法一类似。
方法三
在请求中加一个BeanShell后置处理器,在script中加入:prev.setDataEncoding("utf-8");
这种是针对于响应带有中文导致乱码,虽然和BeanShell前置处理器只有一字之差,但是结果大相径庭。
方法四
修改JMeter的配置文件
进入JMeter安装目录的bin目录下,找到jmeter.properties文件
找到sampleresult.default.encoding这个参数,此行默认是注释的。把注释去掉,把ISO-8859-1改成utf-8,保存,重启JMeter。
作者: 千里和他的软件测试
软件测试学习交流: 软件测试交流群 172489141
银行金融业务交流: 软件测试学习交流群 52304542
接口自动化性能交流: 一个正经的测试群 188427938