前言
效能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測試。
負載測試和壓力測試都屬於效能測試,兩者可以結合進行。
負載測試 確定在各種工作負載下系統的效能,目標是測試當負載逐漸增加時,系統各項效能指標的變化情況。
壓力測試 是通過確定乙個系統的瓶頸或者不能接受的效能點,來獲得系統能提供的最大服務級別的測試
效能測試在軟體的質量保證中起著重要的作用,它包括的測試內容豐富多樣。
中國軟體評測中心將效能測試概括為三個方面:
應用在客戶端效能的測試
應用在網路上效能的測試
應用在伺服器端效能的測試。
通常情況下,三方面有效、合理的結合,可以達到對系統效能全面的分析和瓶頸的**。
效能測試 目的
目的是驗證軟體系統是否能夠達到使用者提出的效能指標,同時發現軟體系統中存在的效能瓶頸,優化軟體,最後起到優化系統的目的。
包括以下幾個方面
1.評估系統的能力
測試中得到的負荷和響應時間資料可以被用於驗證所計畫的模型的能力,並幫助作出決策
2.識別體系中的弱點
受控的負荷可以被增加到乙個極端的水平,並突破它,從而修復體系的瓶頸或薄弱的地方
3.系統調優
重複執行測試,驗證調整系統的活動得到了預期的結果,從而改進效能。
檢測軟體中的問題:長時間的測試執行可導致程式發生由於記憶體洩露引起的失敗,揭示程式中的隱含的問題或衝突。
4.驗證穩定性(resilience)可靠性(reliability)
在乙個生產負荷下執行測試一定的時間是評估系統穩定性和可靠性是否滿足要求的唯一方法。
負載測試(load testing)
負載測試是確定在各種工作負載下系統的效能,目標是測試當負載逐漸增加時,系統組成部分的相應輸出項,例如通過量、響應時間、cpu負載、記憶體使用等來決定系統的效能。負載測試是乙個分析軟體應用程式和支撐架構、模擬真實環境的使用,從而來確定能夠接收的效能過程。
負載測試會幫助確定系統是否還能夠處理期望的使用者負載,以**系統的未來效能;通過模擬成百上千個使用者,重複執行和執行測試,可以確認效能瓶頸並優化和調整應用,目的在於尋找到瓶頸問題。
測試的基本策略是自動負載測試,通過在一台或幾台pc機上模擬成百或上千的虛擬使用者同時執行業務的情景,對應用程式進行測試,同時記錄下每一事務處理的時間、中介軟體伺服器峰值資料、資料庫狀態等。通過可重複的、真實的測試能夠徹底地度量應用的可擴充套件性和效能,確定問題所在以及優化系統效能。預先知道了系統的承受力,就為終端使用者規劃整個執行環境的配置提供了有力的依據。
壓力測試(stress testing)
壓力測試是通過確定乙個系統的瓶頸或者不能接收的效能點,來獲得系統能提供的最大服務級別的測試。
客戶端效能測試
應用在客戶端效能測試的目的是考察客戶端應用的效能,測試的入口是客戶端。它主要包括併發效能測試、疲勞強度測試、大資料量測試和速度測試等,其中併發效能測試是重點。
併發效能測試
併發效能測試的過程是乙個負載測試和壓力測試的過程,即逐漸增加負載,直到系統的瓶頸或者不能接收的效能點,通過綜合分析交易執行指標和資源監控指標來確定系統併發效能的過程。
併發效能測試的目的主要體現在三個方面:
1、以真實的業務為依據,選擇有代表性的、關鍵的業務操作設計測試案例,以評價系統的當前效能;
2、當擴充套件應用程式的功能或者新的應用程式將要被部署時,負載測試會幫助確定系統是否還能夠處理期望的使用者負載,以**系統的未來效能;
3、通過模擬成百上千個使用者,重複執行和執行測試,可以確認效能瓶頸並優化和調整應用,目的在於尋找到瓶頸問題。
網路端效能測試
應用在網路上效能的測試重點是利用成熟先進的自動化技術進行網路應用效能監控、網路應用效能分析和網路**。
網路應用效能分析
網路應用效能分析的目的是準確展示網路頻寬、延遲、負載和tcp埠的變化是如何影響使用者的響應時間的。
網路應用效能監控
網路應用效能監控以及網路資源管理對系統的正常穩定執行是非常關鍵的。利用網路應用效能監控工具。
通俗地講,它主要用來分析關鍵應用程式的效能,定位問題的根源是在客戶端、伺服器、應用程式還是網路。在大多數情況下使用者較關心的問題還有哪些應用程式占用大量頻寬,哪些使用者產生了最大的網路流量
網路**
考慮到系統未來發展的擴充套件性,**網路流量的變化、網路結構的變化對使用者系統的影響非常重要。根據規劃資料進行**並及時提供網路效能**資料。
從網路管理軟體獲取網路拓撲結構、從現有的流量監控軟體獲取流量資訊(若沒有這類軟體可人工生成流量資料),這樣可以得到現有網路的基本結構。在基本結構的基礎上,可根據網路結構的變化、網路流量的變化生成報告和圖表,說明這些變化是如何影響網路效能的。predictor提供如下資訊:根據**的結果幫助使用者及時公升級網路,避免因關鍵裝置超過利用閥值導致系統效能下降;哪個網路裝置需要公升級,這樣可減少網路延遲、避免網路瓶頸;根據**的結果避免不必要的網路公升級。
服務端效能測試
對於應用在伺服器上效能的測試,可以採用工具監控,也可以使用系統本身的監控命令,例如tuxedo中可以使用top命令監控資源使用情況。實施測試的目的是實現伺服器裝置、伺服器作業系統、資料庫系統、應用在伺服器上效能的全面監控。
一 什麼是效能測試
效能測試一定要有結果報告 效能測試針對系統的效能指標,建立效能測試模型,制定效能測試方案,制定監控策略,在場景條件之下執行效能場景,分析判斷效能瓶頸並調優,最終得出效能結果來評估系統的效能指標是否滿足既定值。效能測試需要指標,應該有 時間指標 容量指標 資源利用率指標。這些指標還會細分,後續講解。注...
效能測試目的
目的是驗證軟體系統是否能夠達到使用者提出的效能指標,同時發現軟體系統中存在的效能瓶頸,優化軟體,最後起到優化系統的目的。包括以下幾個方面 1 評估系統的能力,測試中得到的負荷和響應時間資料可以被用於驗證所計畫的模型的能力,並幫助作出決策。2 識別體系中的弱點 受控的負荷可以被增加到乙個極端的水平,並...
效能測試的目的
1.壓測系統看系統的前端以及後端是否滿足預期 類似功能測試用例中的預期結果和實際結果的概念 2.壓測系統看系統可以承受的最佳壓力和最大動力,來判斷系統的承受極限 3.壓測系統看系統在長時間執行下是否可以正常處理請求 類似疲勞測試 4.容量規劃,當系統越來越穩定的時候,我們要提前考慮它的遠景,規劃,或...