前言
在使用 jmeter 測試的時候,有些 html 頁面返回的中文內容顯示亂碼,導致無法正常查看中文的內容
亂碼場景
在打開百度頁面時,返回的html內容中文顯示亂碼,如下圖所示
出現亂碼的原因,主要是請求 header 中沒有charset字段,則默認為 ISO-8859-1 編碼模式。
但實際上它返回的是 utf-8 的編碼,導致無法解析中文,就出現了亂碼
jmeter.properties 配置文件
解決方法一:jmeter.properties配置文件里面,默認解碼方式為ISO-8859-1,可以修改此默認值,改成 utf-8 編碼。
在 bin 目錄找到 jmeter.properties 文件
找到如下位置
# The encoding to be used if none is provided (default ISO-8859-1)
# sampleresult.default.encoding=ISO-8859-1
改成
# The encoding to be used if none is provided (default ISO-8859-1)
sampleresult.default.encoding=UTF-8
保存退出,然后重啟jmeter,再去運行中文就顯示正常了
Bean Shell后置處理
解決方法二:在不改變配置文件的基礎上,可以針對請求添加Bean Shell后置處理去解碼
添加如下內容
prev.setDataEncoding("UTF-8");
再次運行也能正常顯示中文
原文地址https://www.cnblogs.com/yoyoketang/,轉載請注明出處!