背景
最近作業上被安排針對Web網站進行性能壓測,以評估特定的硬體配置下Web網站可支持的并發用戶數,考慮到JMeter是流行的Web性能壓測工具,因此趁著這次機會上網查閱了很多關于JMeter的資料,也自己動手進行軟體的配置和調測,從最基本的發送HTTP請求,到引數化輸入,分布式測驗和最后的實時結果展示都折騰了一把,現將折騰程序進行整理,既作為自己日后參考,也可分享給有需要的人,少踩一些坑,
在折騰的程序中,主要參考JMeter官網,上面有詳細的手冊和教程,同時也參考了其他一些博客和StackOverflow,重新整理的程序也是一個學習提高的程序,復習了相關的概念并找到了一些更易于理解的方法,
?接下來按照我做為初學者對性能壓測的疑問,對整個程序進行梳理:
- 如何開始簡單的WEB壓力測驗(一):發起第一個HTTP請求
- 如何開始簡單的WEB壓力測驗(二):并發測驗與引數化
- 如何錄制測驗計劃
- 如何進行分布式壓力測驗
- 如何實時展現測驗結果
每個問題都會輔以實際的例子進行解答,并將具體操作的步驟和結果截圖記錄下來,
如何開始簡單的WEB壓力測驗
俗話說萬事開頭難,接下來我們以一個最簡單的例子介紹如何從JMeter發起第一個HTTP請求,后續在這個例子上進行延伸,了解如何進行并發測驗和引數化,
發起第一個HTTP請求
1. 安裝JMeter
建議從官網上下載最新版本,以便獲得更多新功能,目前最新的版本是3.3,支持Java8,同時,官網上也有豐富的文黨澩,包括用戶手冊,最佳實踐,組件參考和教程等,值得花時間仔細閱讀,
2. 準備被測網站
被測網站建議使用 PutsReq ,這個網站可以接受HTTP請求并且可以自定義回傳結果,程序非常清晰,適合做為HTTP測驗使用,
在網站首頁上點擊 “Create a PutsReq" 藍色按鈕,網站會自動幫你創建一個URL,接下來就可以往這個路徑發送HTTP請求,可以看到是如果普通的GET請求,則會回傳"Hello World";如果是POST請求并帶了name引數(假設name引數值為XYZ),則會回傳 Hello XYZ
PutsReq網站截圖
3. 在JMeter中配置測驗計劃
首先在Test Plan中增加一個Thread Group,在JMeter中每個Thread相當于一個模擬用戶,在Thread Group中進行進一步的配置可以定義模擬用戶的行為,如發起各種請求等,
創建Thread Group
在本例中Thread Group創建后可以先不改引數,接著創建一個Sampler/HTTP Request
創建Sampler
并按下圖所示填寫相關的引數,包括協議,服務器名,請求型別和路徑,讓模擬用戶發送HTTP GET Reqeust到被測網站,
配置Sampler
最后增加一個Listener/View Results Tree,查看請求的結果,
?
創建Listener
如果一切正常,那這個請求應該回傳一串字符”Hello World"
4. JMeter執行測驗計劃并查看結果
配置完成后我們就可以通過JMeter執行剛剛配置好的測驗計劃,即發送一個HTTP GET Request到被測網站 PutsReq
執行測驗計劃
在JMeter上查看請求結果,回傳是一串字符 "Hello World"
通過Listener查看請求回傳結果
這一小節先整理到這里,下一小節我們在這個例子的基礎上進行延伸,介紹如何同時發起多個請求,并對請求的輸入進行引數化,敬請期待!
另特意為各位同學準備了一份13G的超實用干貨自學資源,涉及的內容非常全面,涵蓋功能測驗、Linux資料庫、Python編程語言,介面測驗、UI自動化測驗、性能測驗......包括軟體學習路線圖,50多天的上課視頻、16個突擊實戰專案(滿足你對測驗經驗的需求),80余個軟體測驗用軟體,37份測驗檔案,70個軟體測驗相關問題,40篇測驗經驗級文章,上千份測驗真題分享,還有2023軟體測驗面試寶典,還有軟體測驗求職的各類精選簡歷,希望對大家有所幫助…這些都在我的軟體測驗學習交流群里:110685036
送給大家一句話:
讓自己變得更強:想一想,如果你想在測驗這個行業一直做下去,你的經驗和測驗技術是遠遠不夠的,你需要進階,你需要豐富你的技術堆疊!還等什么!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/556118.html
標籤:其他
上一篇:委派攻擊
下一篇:返回列表
