在我使用jmeter的时候总是会出现响应信息不是中文,找了很久找到了该方法,非常实用,分享给大家。
在jmeter 发送请求过程中,有时候后台返回的是unicode代码,如:
{“status”:-1,“msg”:"\u66d0\u4ea4\u6770\u636e\u4e0d\u8db3"}
这是我们就需要使用jmeter 把响应内容转换成中文显示,这样就方便我们查看查看。
思路就是使用beanshell把unicode响应结果转换成中文,步骤为:
1.选择某个请求接口右键点击,添加后置处理器,BeanShell PostProcessor
2.在BeanShell PostProcessor设置脚本为:
private static String ascii2native ( String asciicode )
{
String[] asciis = asciicode.split ("\\u");
String nativeValue = asciis[0];
try
{
for ( int i = 1; i < asciis.length; i++ )
{
String code = asciis[i];
nativeValue += (char) Integer.parseInt (code.substring (0, 4), 16);
if (code.length () > 4)
{
nativeValue += code.substring (4, code.length ());
}
}
}
catch (NumberFormatException e)
{
return asciicode;
}
return nativeValue;
}
String asciicode =new String(prev.getResponseData(),“UTF-8”);
prev.setResponseData(ascii2native(asciicode));
3.如果还不能转换成中文,需要修改jmeter中的配置文件jmeter.properties的配置项sampleresult.default.encoding=utf-8,如不存在这一配置项就添加一行
再重新启动jmeter、执行,就可以显示为中文了
备注:部分内容转自网络/某某博客,如有侵权,请联系博主删除,谢谢。
jmeter响应信息unicode编码转成中文
最新推荐文章于 2025-05-20 17:49:40 发布