文章整理上傳於2017年9月14日(某X發佈了),使用的軟件環境爲:win7 ,jmeter3.2測試javaweb
首先說明, 我是個菜鳥, 這篇文章是閒着沒事自檢研究研究寫的, 寫的有不對的地方歡迎指正
新手新手看看能有個基本概念就完事了...
1啓動jmeter
bin目錄下jmeter.bat點擊啓動
2新建線程組
在“測試計劃”上右鍵->添加->Threads(Users)->”線程組” ,名稱爲”線程組-web測試”
3添加http請求默認值
在”線程組-web測試”右鍵->添加->配置元件->http請求默認值,內容如下:
將協議,主機,端口,編碼等默認信息填寫,方便之後的接口參數設置
4添加http信息頭管理器
在”線程組-web測試”右鍵->添加->配置元件->http信息頭管理器 ,默認即可
5添加http cookie管理器
在”線程組-web測試”右鍵->添加->配置元件-> httpcookie管理器 ,默認即可
6添加http請求,填寫要測試的接口信息
在”線程組-web測試”右鍵->添加->sampler->http請求:
只需要填寫方法:get/post,路徑: /項目名/接口地址/…,Parameters:請求參數
7添加結果監聽器
在”線程組-web測試”右鍵->添加->監聽器->查看結果樹
8添加登錄後的JSESSIONID
因爲要測試登錄後的接口,所以需要爲jmater配置一個登陸過已經驗證過的cookie,這樣壓力測試的時候就不會需要去登陸了
瀏覽器打開進入到web的登錄頁,輸入用戶名密碼,
然後F12->Network ,選中Preserve log,防止頁面跳轉導致登錄接口找不到 ,
最後點擊web登錄按鈕登錄系統,查看Network,找到登錄接口Request Headers->cookie,鼠標複製cookie參數
點擊剛纔的”http信息頭管理器”,填寫cookie信息:
如下圖,
9.測試
在”線程組-web測試”右鍵->start
數秒後,在”查看結果樹”找到http請求,發現響應數據確實爲接口查詢的數據,並沒有重定向去登陸接口.
10結尾
此教程是針對線程數>1的傾向下免登陸的,
如果僅僅是一個線程循環多次,可以添加一個”僅一次控制器”,
在一次控制器中添加http請求登錄接口,然後禁用http信息頭管理器即可,這樣測試就只會登錄一次,執行多次其他接口測試
11壓力測試結果分析和優化
我也不清楚怎麼搞,正在研究,有姿勢的留鏈接多謝