使用JMeter進行壓力測驗(基礎篇)
1.啟動Jmeter

雙擊圖中所示檔案出現如下圖所示即啟動成功

2 新建測驗計劃
File------>new

2.1右鍵新建執行緒組
add----->Threads(Users)--->Thread Group

2.2設定執行緒組屬性

name和comments
是名稱和注釋的配置,這里根據自己要測驗的場景設定就好,最好是見名知意
Action to be taken after a sampler error
在取樣器錯誤后要執行的操作,也就是說在某一個請求出錯后的例外處理方式,有5中方式
-
Continue, 繼續,取樣器模擬的請求出錯后,繼續運行
在大量用戶并發請求時,服務器可能會出現錯誤回應,這屬于正常現象,此時要把錯誤記錄下來,繼續后面的請求
-
start next Thread Loop 如果出錯,則統一腳本中的剩下的請求將不在執行,直接重新開始,比如有個場景,需要先登錄后發文,這個時候如果登錄失敗了,那么發帖就不會成功,所以沒必要繼續執行,直接開始下一輪測驗就好,此時就可以設定這個錯誤處理方式,
-
stop thread 停止執行緒,如果遇到取樣器模擬的某個請求失敗,則停止當前執行緒,不再執行,比如配置了40個執行緒,某個執行緒的請求失敗,則停止當前執行緒,剩余的執行緒繼續執行,如果失敗的越多,則停止的越多,運行狀態的執行緒就會越來越少,那服務器的負載就會不夠,測驗結果也不具備參考性了,所一般不設定這個,
-
stop test 停止測驗,如果某一個執行緒的一個請求失敗了,則停止掉所有執行緒,也就是說測驗要停止,但是每個執行緒任然會執行完當前場景,比如當前場景為登陸發文,有個執行緒登陸失敗,其他執行緒也執行到了登陸,錯誤發生后,其他執行緒還是會繼續執行發文操作,
-
stop test Now 立即停止測驗,如果有執行緒請求失敗,則立即停止所有執行緒,不再繼續執行
Thread Properties 執行緒屬性設定
-
執行緒數 Number of Threads(users)
運行的執行緒數設定,一個執行緒對應一個用戶
-
Ramp-up period(seconds)執行緒啟動開始運行的時間間隔,單位是秒,所有執行緒在多長時間內開始運行
比如說設定了50個執行緒,Ramp-up period設定10秒,那么每秒就會啟動5個執行緒,如果設定0秒,那么50執行緒就會立即啟動,
-
Loop count 請求的重復次數,如果選擇infinite,那么請求將會一直執行下去,除非停止或者崩潰,如果選擇填入具體次數,那就可以控制循序的次數了,
-
sam user on each iteration 每次迭代有使用相同的用戶,這個配置是5.2版本以后新加的,之前的版本沒有這個選項,所以會有一個問題,模擬的用戶并不是和真實場景一樣是相互獨立的,他默認在每個執行緒中是復用用戶,給大家推薦一篇文章https://www.cnblogs.com/nmb123/p/12266697.html
-
Delay Thread creation until needed
JMeter 所有的執行緒是一開始就創建完成的,只是遞增的時候會按照上面的規則遞增,如果選擇了這個選項,則不會在一開始創建所有執行緒,只有在需要時才會創建,
如果不選擇,在啟動場景時,JMeter 會用更多的 CPU 來創建執行緒,它會影響前面的一些請求的回應時間,因為壓力機的 CPU 在做其他事情嘛,如果選擇了的話,就會在使用時再創建,CPU 消耗會平均一些,但是這時會有另一個隱患,就是會稍微影響正在跑的執行緒
-
Specify Thread lifetime 執行緒運行時間,這個配置只有Loop count 請求的重復次數,配置了infinite,才會生效,否則還是Loop count 控制執行緒的執行
- Duration(seconds)設定執行緒組運行多長時間,單位是秒
- StartUp delay(seconds)設定執行緒啟動延時時間,單位是秒
3.新建http請求
右擊Thread Group Add--->Sampler--->Http Request

3.1設定Web Server

點擊運行

4.添加監聽結果樹

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/242760.html
標籤:其他
