性能測試的指標及其所需注意的地方[2] 性能測試工具
并發性能測試的種類與指標
并發性能測試的種類取決于并發性能測試工具監控的對象,以QALoad自動化負載測試工具為例。軟件針對各種測試目標提供了DB2、DCOM、ODBC、ORACLE、NETLoad、Corba、QARun、SAP、SQLServer、Sybase、Telnet、TUXEDO、UNIFACE、WinSock、WWW、Java scrīpt等不同的監控對象,支持Windows和UNIX測試環境。
最關鍵的仍然是測試過程中對監控對象的靈活應用,例如目前三層結構的運行模式廣泛使用,對中間件的并發性能測試作為問題被提到議事日程上來,許多系統都采用了國產中間件,選擇Java scrīpt監控對象,手工編寫腳本,可以達到測試目的。
采用自動化負載測試工具執行的并發性能測試,基本遵循的測試過程有:測試需求與測試內容,測試案例制定,測試環境準備,測試腳本錄制、編寫與調試,腳本分配、回放配置與加載策略,測試執行跟蹤,結果分析與定位問題所在,測試報告與測試評估。
并發性能測試監控的對象不同,測試的主要指標也不相同,主要的測試指標包括交易處理性能指標和 UNIX資源監控。其中,交易處理性能指標包括交易結果、每分鐘交易數、交易響應時間(Min:最小服務器響應時間;Mean:平均服務器響應時間;Max:最大服務器響應時間;StdDev:事務處理服務器響應的偏差,值越大,偏差越大;Median:中值響應時間;90%:90%事務處理的服務器響應時間)、虛擬并發用戶數。
應用實例:“新華社多媒體數據庫 V1.0”性能測試 軟件測試
中國軟件評測中心(CSTC)根據新華社技術局提出的《多媒體數據庫(一期)性能測試需求》和GB/T 17544《軟件包質量要求和測試》的國家標準,使用工業標準級負載測試工具對新華社使用的“新華社多媒體數據庫 V1.0”進行了性能測試。
性能測試的目的是模擬多用戶并發訪問新華社多媒體數據庫,執行關鍵檢索業務,分析系統性能。
性能測試的重點是針對系統并發壓力負載較大的主要檢索業務,進行并發測試和疲勞測試,系統采用 B/S運行模式。并發測試設計了特定時間段內分別在中文庫、英文庫、圖片庫中進行單檢索詞、多檢索詞以及變檢索式、混合檢索業務等并發測試案例。疲勞測試案例為在中文庫中并發用戶數200,進行測試周期約8小時的單檢索詞檢索。在進行并發和疲勞測試的同時,監測的測試指標包括交易處理性能以及 UNIX(Linux)、Oracle、Apache資源等。
測試結論:在新華社機房測試環境和內網測試環境中,100M帶寬情況下,針對規定的各并發測試案例,系統能夠承受并發用戶數為200的負載壓力,最大交易數/分鐘達到78.73,運行基本穩定,但隨著負載壓力增大,系統性能有所衰減。
系統能夠承受200并發用戶數持續周期約8小時的疲勞壓力,基本能夠穩定運行。
通過對系統UNIX(Linux)、Oracle和Apache資源的監控,系統資源能夠滿足上述并發和疲勞性能需求,且系統硬件資源尚有較大利用余地。
當并發用戶數超過200時,監控到HTTP 500、connect和超時錯誤,且Web服務器報內存溢出錯誤,系統應進一步提高性能,以支持更大并發用戶數。
建議進一步優化軟件系統,充分利用硬件資源,縮短交易響應時間。
疲勞強度與大數據量測試
疲勞測試是采用系統穩定運行情況下能夠支持的最大并發用戶數,持續執行一段時間業務,通過綜合分析交易執行指標和資源監控指標來確定系統處理最大工作量強度性能的過程。
疲勞強度測試可以采用工具自動化的方式進行測試,也可以手工編寫程序測試,其中后者占的比例較大。
一般情況下以服務器能夠正常穩定響應請求的最大并發用戶數進行一定時間的疲勞測試,獲取交易執行指標數據和系統資源監控數據。如出現錯誤導致測試不能成功執行,則及時調整測試指標,例如降低用戶數、縮短測試周期等。還有一種情況的疲勞測試是對當前系統性能的評估,用系統正常業務情況下并發用戶數為基礎,進行一定時間的疲勞測試。
大數據量測試可以分為兩種類型:針對某些系統存儲、傳輸、統計、查詢等業務進行大數據量的獨立數據量測試;與壓力性能測試、負載性能測試、疲勞性能測試相結合的綜合數據量測試方案。大數據量測試的關鍵是測試數據的準備,可以依靠工具準備測試數據。
速度測試目前主要是針對關鍵有速度要求的業務進行手工測速度,可以在多次測試的基礎上求平均值,可以和工具測得的響應時間等指標做對比分析。
應用在網絡上性能的測試
應用在網絡上性能的測試重點是利用成熟先進的自動化技術進行網絡應用性能監控、網絡應用性能分析和網絡預測。
網絡應用性能分析
網絡應用性能分析的目的是準確展示網絡帶寬、延遲、負載和TCP端口的變化是如何影響用戶的響應時間的。利用網絡應用性能分析工具,例如Application Expert,能夠發現應用的瓶頸,我們可知應用在網絡上運行時在每個階段發生的應用行為,在應用線程級分析應用的問題?梢越鉀Q多種問題:客戶端是否對數據庫服務器運行了不必要的請求?當服務器從客戶端接受了一個查詢,應用服務器是否花費了不可接受的時間聯系數據庫服務器?在投產前預測應用的響應時間;利用Application Expert調整應用在廣域網上的性能;Application Expert能夠讓你快速、容易地仿真應用性能,根據最終用戶在不同網絡配置環境下的響應時間,用戶可以根據自己的條件決定應用投產的網絡環境。
文章來源于領測軟件測試網 http://www.kjueaiud.com/