對於軟體測試初學者來說經常會弄不清負載測試、容量測試、壓力測試、強度測試、性能測試這幾種測試的區別,今天我們就來簡單的說明一下它們之間的區別,最後再舉個例子,希望大家能夠理解。
一、性能測試(或稱多用戶並發性能測試)、負載測試、強度測試、容量測試是性能測試領域裡的幾個方 面
性能測試(Performance Test):通常收集所有和測試有關的所有性能,通常被不同人在不同場合下進行使用。測試軟體在系統中的運行性能,度量系統與預定義目標的差距。
關注點:how much和how fast
二、負載測試(Load Test):負載測試是一種性能測試,指數據在超負荷環境中運行,程序是否能夠承擔。通 過逐步增加系統負載,確定在滿足性能指標的情況下,系統所能承受的最大負載量。
關注點:how much
三、強度測試(Stress Test): 強度測試是一種性能測試,他在系統資源特別低的情況下軟體系統運行情況,目的是找到系統在哪裡失效以及如何失效的地方。包括
Spike testing:短時間的極端負載測試
Extreme testing:在過量用戶下的負載測試
Hammer testing:連續執行所有能做的操作
四、壓力測試:通過逐步增加系統 負載,確定在什麼負載條件下系統處於失效狀態,以此來獲得系統能提供的最大服務級別。
五、容量測試(Volume Test):確定系統可處理同時在線的最大用戶數,使系統承受超額的數據容量來發 現它是否能夠正確處理。
關注點:how much(而不是how fast)
容量測試,通常和數據 庫有關,容量和負 載的區別在於:容量關注的是大容量,而不需要表現實際的使用。
其中,容量測試、負載測試、強度測試的英文解釋為:
Volume Testing = Large amounts of data
Load Testing = Large amount of users
Stress Testing = Too many users, too much data, too little time and too little room
舉例:一個人背X斤
負載測試:200斤情況下,是否能堅持5分鐘。
壓力測試:200,300,400...斤情況下,他的表現,什麼時候失敗,失敗之後什麼表現,重新扛200是否正常。
容量測試:在堅持5分鐘的情況下,他一次最多能扛多少斤。