Locust 場景執行:Web UI 中執行
Locust 執行模式包含兩種
Web UI 模式
在這個模式下,你可以通過 Web 控制場景的執行、實時的了解被測試應用性能表現趨勢,但是 Locust 沒有提供主流壓測工具那樣的豐富圖表,你能看到的只有:
- 每秒發出的請求數
- 請求的響應事件
- 運行中的“用戶數”
其實,從性能測試的角度來看,圖表只要足夠表示負載的增加對性能趨勢的影響、事件關系就足夠了。
命令行模式
- 腳本開發調試過程中,出於工作效率的目的,建議使用該模式
- 如果你使用了遠程主機作為負載機,不想麻煩運維同學開通端口權限,可以使用命令行模式運行壓測
Web UI 模式下的圖表解釋
Statistics 統計概要
盡管這些指標字面上都清晰明了,但鑒於這篇文章的讀者普遍有 LoadRunner、Jmeter 使用經驗,有些區別還是要說明一下,比方說 LoadRunner 對響應時間做統計是只針對 Pass 的事務執行統計的,不包括 失敗、停止、或者超時:
Type
- 請求的類型,在 HttpUser 中,常見的有 Get 和 Post
- 如果是自定義 Client ,Type 同樣也可自定義
Name
- 在 HttpUser 中,是請求中的 name 參數,如果未定義 name,這里將是請求的接口路徑
- 如果路徑中包含變量參數,大部分情況下都建議在腳本中指定一下 name,除非你想對不同的傳參分別進行獨立的統計
Requests
- 表示成功發出請求的數量,並不是成功處理請求的數量
Fails
- 表示請求處理失敗的數量
Median
- 表示所有請求響應時間的中位數
90%ile
- 表示所有請求響應時間的90%百分位數
Average / Min / Max
- 表示所有請求響應時間的平均值 / 最小值 / 最大值
Average size
- 表示所有響應的size平均值
Current RPS
- 表示每秒創建的請求數
Current Failures / s
- 表示每秒創建請求的失敗數量
Charts 圖表
如果你對比 LoadRunner 或者 Jmeter,你一定會對 Locust 所提供的結果圖形之“簡陋”感到震驚,想要學習 Locust 的結果圖表大約只要3分鍾。
首先來看看“響應時間”,也就是“response_times_(ms)”,橫軸為時間軸,縱軸為以毫秒為單位的響應時間,需要注意的是,圖表上面兩根線並不是表示平均值,而是響應時間的“中位數”和“95%百分位數值”:
再來看看“每秒請求數”,也就是“total_requests_per_second”,橫軸為時間軸,縱軸為每秒請求的數量(請求處理通過的):
最后看看“運行中的用戶”,也就是“number_of_users”,橫軸為時間軸,縱軸為時間所對應的“用戶數”:
Failures 失敗日志
腳本請求產生的異常響應、失敗都可以在這里看到
Exceptions 異常日志
腳本運行拋出的異常可以在這里看到
Download Data 下載原始數據
內容和 Statistics 的一致