1.驗收性能測試
驗收性能測試(Acceptance Performance Testing)方法通過模擬生產運行的業務壓力量和使用場景組合,測試系統的性能是否滿足生產性的要求。通俗的說:在特定的運行條件下驗證系統的能力狀況。
(1)主要目的就是驗證系統是否具有系統宣稱具有的能力。
(2)這種方法需要事先了解被測系統的典型場景,并具有確定的性能目標。
2.負載測試
負載測試(Load Testing)方法在被測系統上不斷增加壓力,直到性能指標(如響應時間)超過預定指標或者某種資源使用已經達到飽和狀態。負載測試方法可以找到系統的處理極限,為系統調優提供數據,有時也被稱為可置性測試(Scalability Testing)。
(1)這種性能測試方法的主要目的是找到系統處理能力的極限。
(2)這種性能測試方法需要在給定的測試環境中進行,通常也需要考慮被測系統的業務壓力量和典型場景,使得測試結果具有業務上的意義。
(3)這種性能測試方法一般用來了解系統的系統容量,或者是配合性能調優使用。(比較調優前后的性能差異)
3.壓力測試
壓力測試(Stress Testing)方法測試系統在一定飽和狀態下,例如CPU、內存等在飽和使用情況下,系統能夠處理的會話能力,以及系統是否會出現錯誤。
(1)這種性能測試方法的主要目的是檢查系統處于壓力情況下時應用的性能表現
? ? ? ? ?這種性能測試方法通過增加訪問壓力,是系統資源使用保持在一定水平,檢驗此時應用的表現,重點在于有誤出錯信息產生,系統對應用的響應時間等.
(2)這種性能測試方法一般通過模擬負載等方法,使得系統的資源使用達到較高的水平。
(3)這種性能測試方法一般用于測試系統的穩定性。
4.配置測試
配置測試(Configuration Testing)方法通過對被測系統軟硬件環境的調整,了解各種不同環境對系統性能影響的程度,從而找到系統各項資源的最優分配原則。(一般用于性能調優和規劃能力)
5.并發測試
并發測試(Concurrency Testing)方法模擬多用戶并發訪問同一個應用、模塊或者數據記錄時是否存在死鎖或者其他性能問題。
(1)這種性能測試方法的主要目的是發現系統中可能存在的并發訪問時的問題。
(2)這種性能測試方法主要關注系統中可能存在的并發問題。比如:內存泄漏、線程鎖和資源爭用等問題。
(3)這種性能測試方法可以在開發的各個階段使用,需要相關的測試工具的配合和支持。
6.可靠性測試
可靠性測試(Reliability Testing)方法通過給系統施加一定的業務壓力(例如資源在70%-90%的使用率),讓其持續運行一段時間,測試在這種條件下能否穩定運行。
(1)這種性能測試方法主要目的是驗證系統是否支持長期穩定的運行。
(2)這種性能測試方法需要在壓力下持續一段時間的運行。
(3)這種性能測試方法測試過程中需要關注系統的運行情況。