點擊鏈接加入QQ群 522720170(免費公開課郭脂、視頻應有盡有):https://jq.qq.com/?_wv=1027&k=5C08ATe
一舌稀、JMeter進行HTTP協(xié)議接口的壓力測試
1.添加線程組
填寫并發(fā)信息
2.添加HTTP請求
填寫HTTP請求信息
3.設置監(jiān)聽器
4.測試執(zhí)行
1.)點擊【保存】按鈕蔫饰,保存測試腳本克懊,格式為:*.jmx;
2.)點擊【啟動】按鈕,執(zhí)行測試腳本;
5.測試結果解析
1.)查看結果樹:可以查看測試結果呈昔、請求信息蒿讥、響應信息蝶念;
2)查看聚合報告:可以查看測試的請求數(shù)、響應時間和成功率
二芋绸、JMeter測試搶紅包示例
(1)概述
??? 此處記錄使用JMeter對搶紅包業(yè)務進行壓力測試的過程媒殉,涉及的內容包括:
1.搶紅包業(yè)務壓力測試需求分析;
2.創(chuàng)建JMeter測試計劃摔敛,根據(jù)業(yè)務執(zhí)行邏輯設計測試腳本廷蓉;
3.設置檢查點;
4.回放腳本马昙,根據(jù)業(yè)務邏輯判斷檢查點設置是否有效桃犬;
5.腳本參數(shù)化;
6.虛擬批量用戶執(zhí)行搶紅包業(yè)務行楞;
7.測試結果分析攒暇;
(2)測試需求分析
1.驗證批量用戶搶紅包時的響應時間是否滿足300ms以內;
2.驗證相同紅包每個用戶只能搶1次子房;
3.每個紅包最多只能被搶9次形用;
4.用戶搶紅包的業(yè)務:
1)使用手機訪問紅包就轧,請求驗證碼;(參數(shù)包含手機號碼和驗證碼)
2)(驗證碼下發(fā)成功)尾序,使用手機搶紅包钓丰;(參數(shù)包含手機號碼和驗證碼)
5.測試手機號碼和測試紅包有限躯砰;
(3)創(chuàng)建測試計劃每币、設計測試腳本
步驟如下:
1.新建測試計劃,右擊測試計劃-->【添加】-->【Threads(Users)】-->【線程組】琢歇,創(chuàng)建名為“搶紅包測試”的線程組兰怠;
2.右擊“搶紅包測試”線程組-->【添加】-->【Sampler】-->【HTTP請求】,添加名為“請求驗證碼”的HTTP請求李茫;
1)填寫“請求驗證碼”的HTTP請求信息揭保;
2)為“請求驗證碼”請求【查看結果樹】,監(jiān)聽測試結果魄宏;
3.右擊“搶紅包測試”線程組-->【添加】-->【Sampler】-->【HTTP請求】秸侣,添加名為“搶紅包”的HTTP請求;
1)填寫“搶紅包”的HTTP請求信息宠互;
2)為“搶紅包”請求添加【查看結果樹】味榛,監(jiān)聽測試結果;
4.右擊“搶紅包測試”線程組-->【添加】-->【監(jiān)聽器】-->【查看結果樹】予跌,看測試結果搏色、請求信息、響應信息券册;
5.右擊“搶紅包測試”線程組-->【添加】-->【監(jiān)聽器】-->【聚合報告】频轿,查看測試的請求數(shù)、響應時間和成功率等信息烁焙;
6.按上述步驟創(chuàng)建測試腳本航邢,效果如下:
(4)設置檢查點
步驟如下:
1.使用一組正確的測試數(shù)據(jù),驗證請求驗證碼骄蝇、搶紅包成功的提示信息:
? ?1)請求驗證碼成功的提示信息為“短信驗證碼下發(fā)成功膳殷!”
2)請求驗證碼成功后,搶紅包成功的提示信息為“成功”
2.設置檢查點
1)右擊“請求驗證碼”請求-->【添加】-->【斷言】-->【響應斷言】乞榨;
2)點擊【添加】按鈕秽之,編輯斷言信息,該例中檢查響應數(shù)據(jù)是否包含“短信驗證碼下發(fā)成功吃既!”
3)右擊“搶紅包”請求-->【添加】-->【斷言】-->【響應斷言】考榨;
4)點擊【添加】按鈕,編輯斷言信息鹦倚,該例中檢查響應數(shù)據(jù)是否包含“成功”河质;
(5)驗證檢查點是否生效
1..使用失效數(shù)據(jù)模擬用戶請求,確認檢查點是否生效;
1.)使用失效數(shù)據(jù)請求驗證碼時掀鹅,測試失敗散休,因沒有檢查到指定信息;
? ? 2.)使用失效數(shù)據(jù)搶紅包時乐尊,測試失敗戚丸,因沒有檢查到指定信息;
2.使用正確信息請求時扔嵌,測試通過限府;
(6)腳本參數(shù)化
步驟如下:
1.右擊“搶紅包測試”線程組-->【添加】-->【配置元件】-->【CSV Data Set Config】;
2.編輯【CSV Data Set Config】信息痢缎,如下圖:
3.修改“請求驗證碼”和“搶紅包”請求中需要參數(shù)化的參數(shù)值胁勺,和步驟2中定義的變量屬性一致;
4.參數(shù)文件示例:
(7)虛擬批量用戶執(zhí)行搶紅包業(yè)務
前置條件:
1.檢查點生效独旷、測試腳本調試成功署穗;
2.測試參數(shù)化的測試數(shù)據(jù)準備完成;
步驟:
1.設置測試計劃循環(huán)次數(shù)嵌洼;
2.點擊啟動按鈕案疲,開始執(zhí)行測試
(8)測試結果分析
1.查看結果樹:測試結果與實際結果一致,成功118次咱台,失敗7次(調試腳本時已使用的信息络拌,為失效信息)
2.查看聚合報告:
三、多線程組并發(fā)測試(多場景混合并發(fā))
如果測試需求出現(xiàn)如下場景回溺,該如何使用JMeter實現(xiàn)壓力測試呢春贸?即JMeter如何實現(xiàn)多線程組并發(fā)測試,也就是Loadrunner中的混合場景測試時遗遵,該如何設置并發(fā)數(shù)萍恕?
測試需求如下:對業(yè)務A、業(yè)務B车要、業(yè)務C允粤、業(yè)務D、業(yè)務E翼岁,5個業(yè)務按并發(fā)比例要求進行100個用戶并發(fā)的壓力測試类垫;
JMeter是可以實現(xiàn)上述需求的,測試方案如下:
1.創(chuàng)建一個測試計劃琅坡;
2.在該計劃下添加5個線程組悉患,分別是對業(yè)務A、業(yè)務B榆俺、業(yè)務C售躁、業(yè)務D坞淮、業(yè)務E;
3.分別設置線程組業(yè)務A陪捷、業(yè)務B回窘、業(yè)務C、業(yè)務D市袖、業(yè)務E的線程數(shù)為:40啡直、10、20凌盯、25付枫、5(總并發(fā)量為100,按并發(fā)比例設置并發(fā)用戶數(shù))
3.在該計劃下添加測試結果監(jiān)控驰怎;
4.設置執(zhí)行時間,開始執(zhí)行測試二打,測試時可以看到并發(fā)數(shù)為5個業(yè)務并發(fā)量的總和县忌,,如下圖: