Jmeter介面壓測示例 Apache JMeter™ 是 Apache 組織開發的一款開源軟體,是典型的純 Java 開發的應用程式,可以在不同平臺比如 Windows 、 Linux 或 macOS 系統上進行軟體測試。 JMeter 主要用於應用程式的功能負載測試以度量軟體的性能,也可以用於其 ...
Jmeter介面壓測示例
Apache JMeter™
是 Apache
組織開發的一款開源軟體,是典型的純 Java
開發的應用程式,可以在不同平臺比如 Windows
、 Linux
或 macOS
系統上進行軟體測試。 JMeter
主要用於應用程式的功能負載測試以度量軟體的性能,也可以用於其他類型的測試比如介面測試, API測試
等。
下載地址: https://jmeter.apache.org/download_jmeter.cgi
詳解jmeter線程組
Threads (Users)線程 用戶
- setup thread group 常規線程組前置操作 例如測試前的登錄,註冊等操作
- teardown thread group 常規線程組後置操作 例如 退出登錄進行操作
- thread group(線程組) 常規線程組 正常介面測試 我們就以這個來演示
加入我們,群。642830685,領取最新軟體測試大廠面試資料和Python自動化、介面、框架搭建學習資料!同行一起交流,技術大牛解惑答疑
thread group基本設置
- 線程數
線程數可以理解為併發數,他們互不幹擾.
- ramp-up period
設置啟動所有線程所需的時間,我們設置了100個線程, 並且ramp-up period是1秒, 那麼 Jmeter
使用1秒啟動100個線程,每個線程之間相隔時間 = 1 / 100
這個值設置比較小,線程數又設置這麼大,對系統負載是比較大的,我們可以根據機器調整一下
- 迴圈次數
設置線程組在結束前每個線程的迴圈次數,如果設置為1,那麼JMeter在停止前只執行測試計劃一次,迴圈開始執行時間幾乎與第一遍執行時間並行
http請求設置
請求響應斷言
對介面進行斷言,如果是正常 API
的話用 JSON
來斷言,這裡我就直接用響應碼斷言
同步定時器 併發測試
同步定時器是 jmeter
中一個比較重要的定時器,同步定時器,相當於一個儲蓄池,累積一定的請求,當在規定的時間內達到一定的線程數量,這些線程會在同一個時間點一起併發,可以用來做大數據量的併發請求。
最近公司開發了一個轉賬功能,需要最轉賬介面做一個併發測試,測試賬戶餘額剩下10的時候,同時發起兩個轉賬請求,請求數額均為10,測試能不能發送成功。自己的話很難做併發測試,我們開發也可以使用這種工具對一些必要的介面進行測試
- 模擬用戶組數量
每次釋放的線程數量。如果設置為0,等同於設置為線程租中的線程數量。如果設置為10,即集合10個線程等待,同時發送請求。設置此數量不能超過線程組中的線程數量。
- 超時時間以毫秒為單位
如果設置為0, Timer
將會等待線程數達到了模擬用戶組數量中設置的值才釋放。如果一直沒有達到,則會一直等待,除非手動關閉執行。如果大於0,那麼如果超過超時時間中設置的最大等待時間(毫秒為單位)後還沒達到 模擬用戶組數量 中設置的值,Timer將不再等待,釋放已到達的線程。預設為0
測試結果查看