性能測試在軟件測試中是很重要的一個階段,難度相對來說也是比較難的,因為在性能測試實施過程中,針對于不同的業(yè)務場景,講過分析和場景建模之后,我們也會選擇不同的測試策略。結合測試中絕大多數的場景,性能測試常見的測試策略主要有以下幾種。
1. 并發(fā)測試。模擬客戶端請求,多用戶在同一時間做同一事情或執(zhí)行同一操作,針對同一業(yè)務,驗證系統(tǒng)是否具有并發(fā)性的問題。
2. 負載測試。不斷增加請求壓力,直到服務器某個資源項達到飽和或某個指標達到安全臨界值; 負載測試一般主要用來尋找性能的拐點,驗證系統(tǒng)在既有測試環(huán)境不同的請求壓力下能否正常運行。
3. 容量測試。采用負載測試策略,驗證在現有測試環(huán)境下被測系統(tǒng)的大性能表現。
4. 極限測試。在既有測試環(huán)境下,不考慮資源占用率的極限情況,在系統(tǒng)不宕機的情況下的極限處理能力。
5. 配置測試。不斷調整系統(tǒng)各方面的配置(軟硬件、參數配置等),驗證在性能達到極限時的配置。
6. 浪涌測試。驗證系統(tǒng)在某段時間內并發(fā)突增或請求量波動較大的情況下,系統(tǒng)能否正常穩(wěn)定地提供服務。
7. 穩(wěn)定性測試。測試系統(tǒng)在一定負載下運行長時間后是否會發(fā)生問題。軟件系統(tǒng)的有些問題是不能一下子就暴露出來的,或者說是需要時間積累才能達到能夠度量的程度。
8. 高可用測試。在集群多節(jié)點或分布式的情況下,破壞其中一個或多個集群節(jié)點,驗證系統(tǒng)能否及時恢復服務能力
9. 批處理測試。驗證待測系統(tǒng)在既有環(huán)境下,系統(tǒng)的批處理業(yè)務能力能否滿足生產的業(yè)務需求指標。
10. 容錯恢復測試。驗證系統(tǒng)能否在出現故障的情況下仍能保持正常提供服務的能力或出現故障后的自我恢復能力。