生活随笔
收集整理的這篇文章主要介紹了
jmeter将响应结果由Unicode转码成中文展示
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一般,線上的接口返回?cái)?shù)據(jù)都會(huì)經(jīng)過(guò)加密展示,如果想中文展示,則需要添加BeanShell PostProcessor,并加入代碼,如下圖:
并插入如下代碼:
//獲取響應(yīng)代碼Unicode編碼的String s2=new String(prev.getResponseData(),"UTF-8");
//---------------一下步驟為轉(zhuǎn)碼過(guò)程---------------char aChar;int len= s2.length();StringBuffer outBuffer=new StringBuffer(len);for(int x =0; x <len;){aChar= s2.charAt(x++);if(aChar=='\\'){aChar= s2.charAt(x++);if(aChar=='u'){int value =0;for(int i=0;i<4;i++){aChar= s2.charAt(x++);switch(aChar){case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':case'8':case'9':value=(value <<4)+aChar-'0';break;case'a':case'b':case'c':case'd':case'e':case'f':value=(value <<4)+10+aChar-'a';break;case'A':case'B':case'C':case'D':case'E':case'F':value=(value <<4)+10+aChar-'A';break;default:throw new IllegalArgumentException("Malformed \\uxxxx encoding.");}}outBuffer.append((char) value);}else{if(aChar=='t')aChar='\t';else if(aChar=='r')aChar='\r';else if(aChar=='n')aChar='\n';else if(aChar=='f')aChar='\f';outBuffer.append(aChar);}}elseoutBuffer.append(aChar);}
//-----------------以上內(nèi)容為轉(zhuǎn)碼過(guò)程---------------------------
//將轉(zhuǎn)成中文的響應(yīng)結(jié)果在查看結(jié)果樹(shù)中顯示prev.setResponseData(outBuffer.toString());
然后,重啟jmeter即可。
注意:在進(jìn)行正式壓力測(cè)試時(shí),要記得把BeanShell PostProcessor禁用掉,否則影響測(cè)試結(jié)果。
轉(zhuǎn)載于:https://blog.51cto.com/11959825/2053509
總結(jié)
以上是生活随笔為你收集整理的jmeter将响应结果由Unicode转码成中文展示的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。