Jmeter在訪問接口的時候,響應內容如果有中文可能會顯示亂碼,原因應該是響應頁面沒有做編碼處理,jmeter默認按照ISO-8859-1編碼格式進行解析。
下面把解決步驟列一下:
現象:jmeter訪問本地文件,文件內容有中文,jmeter返回內容顯示亂碼:
方法一:改配置文件
進入Jmeter的bin目錄下,找到jmeter.properties文件,以文本形式打開
本例目錄:D:\apache-jmeter-4.0\bin
找到sampleresult.default.encoding這個參數,此行默認是注釋的。
可以看到說明,默認值是ISO-8859-1
將ISO-8859-1修改成utf-8,去掉注釋符號,重啟Jmeter
重啟可以在命令行界面,進入jmeter的bin目錄下,運行jmeter.bat,如果添加了環境變量,可以在任何位置運行jmeter.bat重啟jmeter
再次訪問文件,已經不顯示亂碼了
方法二:通過后置處理器BeanShell PostProcessor
問題還原:
添加后置處理器:BeanShell PostProcessor
輸入prev.setDataEncoding("utf-8"); 目的是修改響應數據編碼格式為utf-8,保存
再次請求,響應結果中已經沒有亂碼了
由以上方法可見,用后置處理器修改響應編碼的方式更方便一些,不用改文件,也不用重啟jmeter。