堅持分享,堅持總結,技術需要時間的積累和練習,對jmeter實踐的點滴的記錄,這里分享交流,僅供參考和討論,有想法的歡迎留言、談論,手機上圖片如果不清晰,請點擊【閱讀原文】查看。
1技巧1:后台數據html轉碼,導致jmeter不能直接斷言詳情
問題:項目為了做xss防御,加了一種轉碼方式,導致我們在jmeter中看到響應的值如圖,無法直接斷言
分析:這是一種轉碼,瀏覽器可以解析,我們只需要做html的轉碼即可,我們查資料知道 unescapeHtml這個函數可用
解決方案:
1、在jmeter的測試計划下引入包commons-lang.jar
獲取地址:https://yunpan.cn/cvmXJuFtUu4vK 訪問密碼 771a
2、在【用戶參數】,或者csv中添加我們預期的斷言的值,我們這里為了方便在【用戶參數】中添加如圖
3、在請求中添加beanshell,如圖:
import org.apache.commons.lang.StringEscapeUtils;
//String htmltest = "国家级2次;校级4次;";
//控制台上打印
//System.out.println("htmltest:"+StringEscapeUtils.unescapeHtml(htmltest));
//獲取響應結果
String myResult=prev.getResponseDataAsString();
//做html轉碼處理
String myResult2=StringEscapeUtils.unescapeHtml(myResult);
//將結果保存在變量【myResult3】中
vars.put("myResult3",myResult2);
4、添加響應斷言,通過jmeter 變量來斷言,如圖:
5、運行,查看斷言結果,成功解決問題
好了,本次到此,歡迎留言、點贊、轉發等來交流,更多分享下期再會,給你帶來更多價值,是我們期待的方向,有更多興趣的歡迎切磋,我們微信訂閱號,聯系方式如下: