文章目錄
前言
使用性能測試工具常常碰到各種各樣的問題,還是因爲自己實力不足,這次阻礙最久的就是一直說URL檢查錯誤,從fiddler裏面看發現很多信息頭都不同,又想起來之前有用HTTP代理服務器錄製的腳本都有自動添加信息頭管理器,就這樣很幸運的解決了腳本回放的問題
錄製工具選擇
用HTTP代理服務器錄製,好處就是每個步驟都有HTTP信息頭管理器記錄頭信息,非常的方便
HTTP代理服務器使用參考:https://www.cnblogs.com/chengtch/p/6067915.html
關於token
請求返回400的錯誤,有的時候是因爲token變了,需要在提交有token請求前獲取生成的token
步驟:
1.錄製的時候,開啓fiddler進行抓包,先進行顯示過濾
2.找到請求體中會提交token的請求
3.需提交token的請求前會生成token,往前查找請求返回中哪裏出現了token
4.在JMeter中添加正則表達式提取器
5.配置正則表達式提取器
項 | 解釋 |
---|---|
引用名稱 | 當做提取出來的的變量名 |
正則表達式 | () 內的就是要提取的部分; .:匹配任何字符串; *:零次或更多次; ?:在找到第一個匹配項後停止 |
模板 | 取第一個值 |
匹配數字 | 正則表達式匹配數據的所有結果可以看做一個數組,匹配數字即可看做是數組的第幾個元素。-1表示全部,0隨機,1第一個 |
詳細參考:
https://www.cnblogs.com/zy-tester/p/9553892.html
https://www.cnblogs.com/tudou-22/p/9566894.html
6.在需要提交token的請求中引用提取出來的值
凡是要提交的請求都做一樣的處理
這樣就解決了token的問題
關於內容編碼Encoding爲中文的
網上很多人都說在HTTP請求中修改
要是很多地方都要改,那多麻煩,我自費學習了一門課程,介紹了一個一勞永逸的方法
步驟:
1.線程組中添加一個BeanShell後置處理器
2.添加以下代碼,即可把所有的內容編碼改爲utf-8
prev.setDataEncoding(“utf-8”)