軟體效能測試過程詳解與案例分析(段念 編著) 學習筆記四
1.效能測試 performance testing
通過模擬生產執行的業務壓力量和使用場景組合,測試系統的效能是否滿足生產效能要求。
①目的是驗證系統是否具有系統宣稱具有的能力;
②需要事先了解被測試系統典型場景,並具有確定的效能目標;
③要求在已確定的環境下執行;
2.負載測試 load testing
通過在被測系統上不斷增加壓力,直到效能指標超過預定指標或者某種資源使用已經達到飽和狀態;
①目的是找到系統處理能力的極限;「檢測—加壓—直到效能指標超過預期」
②需要在給定的測試環境下進行,通常也要考慮被測系統的業務壓力量和典型場景,使得測試結果具有業務上的意義;
③一般用來了解系統的效能容量,或是配合效能調優來使用;
3.壓力測試 stress testing
測試系統在一定飽和狀態下,例如cpu、記憶體等在飽和使用情況下,系統能夠處理的會話能力,以及系統是否會出現錯誤;
①目的是檢查系統處於壓力情況下時,應用的表現;
②一般通過模擬負載等方法,使得系統的資源使用達到較高的水平;
③一般用於測試系統的穩定性;
4.配置測試 configuration testing
通過對被測系統的軟/硬體環境的調整,了解各種不同環境對系統效能影響的程度,從而找到系統各項資源的最優分配原則;
①目的是了解各種不同因素對系統效能影響的程度,從而判斷出最值得進行的調優操作;
②一般在對系統效能狀況有初步了解後進行;
③一般用於效能調優和規劃能力;
5.併發測試 concurrency testing
通過模擬使用者的併發訪問,測試多使用者併發訪問同乙個應用、同乙個模組或者資料記錄時是否存在死鎖或者其他效能問題;
①目的是發現系統中可能隱藏的併發訪問時的問題;
②主要關注系統可能存在的併發問題,例如系統中的記憶體洩露、執行緒鎖和資源爭用方面的問題;
③可以在開發的各個階段使用,需要相關的測試工具的配合和支援;
6.可靠性測試 reliability testing
通過給系統載入一定的業務壓力(例如資源在70%-90%的使用率)的情況下,讓應用持續執行一段時間,測試系統在這種條件下是否能夠穩定執行;
軟體可靠性一般用「平均無故障時間(mtbf)」或者「失效率」來衡量;由於mtbf中的時間概念一般被定義為「cpu時間」,因此,可以大致認為,如果在cpu處於較大壓力下執行一段時間,則「等同」於讓系統在壓力小的情況下較長時間執行,因此,通過在壓力環境下進行測試,可以看成是一種「壓縮時間的測試方法」;
①目的是驗證系統是否能夠支援長期穩定的執行;
②需要在壓力下持續一段時間的執行;(一般2-3天的穩定性測試就可以了)
③測試過程中需要關注系統的執行狀況;
7.失效恢復測試 failover testing
針對有冗餘備份和負載均衡的系統設計的;這種測試方法可以用來檢驗如果系統區域性發生故障,使用者是否能夠繼續使用系統;以及如果這種情況發生,使用者將受到多大程度的影響;
①目的是驗證在區域性故障情況下,系統能否繼續使用;
②這種測試方法還需要指出,當問題發生時,「能支援多少使用者訪問」的結論和「採取何種應急措施」的方案;
③一般來說,只有對系統持續執行指標有明確要求的系統才需要進行這種型別的測試;
效能測試總結
效能測試知識總結 效能測試的目的 1 評估當前系統的效能指標,分析定位解決效能瓶頸,預防規避效能風險 2 分析導致瓶頸的原因,調優解決效能瓶頸 3 通過某些手段讓系統的效能得到提公升 效能測試的概念 系統測試 效能測試主要是通過自動化的測試工具或手段模擬多種正常 峰值以及異常負載條件來對系統的各項效...
手機效能測試 總結
手機效能測試 手機測試策略伺服器效能 伺服器宕機時間 由於某些原因如果伺服器宕機或資料不可達,我們可以將資料儲存在本地資料庫。當伺服器宕機,我們可以顯示資料儲存在本地資料庫中。另乙個解決方案可能是資料庫故障轉移伺服器即如果其中乙個伺服器或在維護階段備份伺服器應該可以切換。故障轉移 備份伺服器應該在連...
SQL執行效率和效能測試方法總結
對於做管理系統和分析系統的程式設計師,複雜sql語句是不可避免的,面對海量資料,有時候經過優化的某一條語句,可以提高執行效率和整體執行效能。如何選擇sql語句,本文提供了兩種方法 分別對多條sql進行量化的分析。在測試sql效能的過程中。一是通過設定statistics檢視執行sql時的系統情況。選...