軟體效能測試指標及其注意地方

來源:互聯網
上載者:User

標籤:style   ar   color   使用   sp   java   on   檔案   資料   

並發效能測試的種類與指標

  並發效能測試的種類取決於並發效能測試工具監控的對象,以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%交易處理的服 務器回應時間)、虛擬並發使用者數。

  效能測試是通過自動化的測試載入器類比多種正常、峰值以及異常負載條件來對系統的各項效能指標進行測 試。負載測試和壓力測試都屬於效能測試,兩者可以結合進行。通過負載測試,確定在各種工作負載下系統的效能,目標是測試當負載逐漸增加時,系統各項效能指 標的變化情況。壓力測試是通過確定一個系統的瓶頸或者不能接收的效能點,來獲得系統能提供的最大服務等級的測試。

  一、概述

  效能測試在軟體的品質保證中起著重要的作用,它包括的測試內容豐富多樣。中國軟體評測中心將效能測 試概括為三個方面:應用在用戶端效能的測試、應用在網路上效能的測試和應用在伺服器端效能的測試。通常情況下,三方面有效、合理的結合,可以達到對系統性 能全面的分析和瓶頸的預測。

  ·應用在用戶端效能的測試

  應用在用戶端效能測試的目的是考察用戶端應用的效能,測試的入口是用戶端。它主要包括並發效能測試、疲勞強度測試、大資料量測試和速度測試等,其中並發效能測試是重點。

  並發效能測試是重點

  並發效能測試的過程是一個負載測試和壓力測試的過程,即逐漸增加負載,直到系統的瓶頸或者不能接收 的效能點,通過綜合分析交易執行指標和資源監控指標來確定系統並發效能的過程。負載測試(Load Testing)是確定在各種工作負載下系統的效能,目標是測試當負載逐漸增加時,系統組成部分的相應輸出項,例如通過量、回應時間、CPU負載、記憶體使 用等來決定系統的效能。負載測試是一個分析軟體應用程式和支撐架構、類比真實環境的使用,從而來確定能夠接收的效能過程。壓力測試(Stress Testing)是通過確定一個系統的瓶頸或者不能接收的效能點,來獲得系統能提供的最大服務等級的測試。

  並發效能測試的目的主要體現在三個方面:以真實的業務為依據,選擇有代表性的、關鍵的業務操作設計 測試案例,以評價系統的當前效能;當擴充應用程式的功能或者新的應用程式將要被部署時,負載測試會協助確定系統是否還能夠處理期望的使用者負載,以預測系統 的未來效能;通過類比成百上千個使用者,重複執行和運行測試,可以確認效能瓶頸並最佳化和調整應用,目的在於尋找到瓶頸問題。

  當一家企業自己組織力量或委託軟體公司代為開發一套應用系統的時候,尤其是以後在生產環境中實際使 用起來,使用者往往會產生疑問,這套系統能不能承受大量的並發使用者同時訪問? 這類問題最常見於採用聯機交易處理(OLTP)方式資料庫應用、Web瀏覽和ApsaraVideo for VOD等系統。這種問題的解決要藉助於科學的軟體測試手段和先進的測試工 具。

  舉例說明:電信計費軟體

  眾所周知,每月20日左右是市話交費的高峰期,全市幾千個收費網點同時啟動。收費過程一般分為兩 步,首先要根據使用者提出的電話號碼來查詢出其當月產生費用,然後收取現金並將此使用者修改為已交費狀態。一個使用者看起來簡單的兩個步驟,但當成百上千的終 端,同時執行這樣的操作時,情況就大不一樣了,如此眾多的交易同時發生,對應用程式本身、作業系統、中樞資料庫伺服器、中介軟體伺服器、網路裝置的承受力都 是一個嚴峻的考驗。決策者不可能在發生問題後才考慮系統的承受力, 預見軟體的並發承受力, 這是在軟體測試階段就應該解決的問題。

  目前,大多數公司企業需要支援成百上千名使用者,各類應用環境以及由不同供應商提供的元件組裝起來的複雜產品,難以預知的使用者負載和愈來愈複雜的應用程式,使公司擔憂會發生投放效能差、使用者遭受反應慢、系統失靈等問題。其結果就是導致公司收益的損失。

  如何類比實際情況呢? 找若干台電腦和同樣數目的操作人員在同一時刻進行操作,然後拿秒錶記錄下反應時間?這樣的手工作坊式的測試方法不切實際,且無法捕捉程式內部變化情況,這樣就需要壓力測試工具的輔助。

  測試的基本策略是自動負載測試,通過在一台或幾台PC機上類比成百或上千的虛擬使用者同時執行業務的 情景,對應用程式進行測試,同時記錄下每一交易處理的時間、中介軟體伺服器峰值資料、資料庫狀態等。通過可重複的、真實的測試能夠徹底地度量應用的可擴充性 和效能,確定問題所在以及最佳化系統效能。預Crowdsourced Security Testing道了系統的承受力,就為終端使用者規劃整個運行環境的配置提供了有力的依據。

  並發效能測試前的準備工作

  測試環境:配置測試環境是測試實施的一個重要階段,測試環境的適合與否會嚴重影響測試結果的真實性 和正確性。測試環境包括硬體環境和軟體環境,硬體環境指測試必需的伺服器、用戶端、網路連接裝置以及印表機/掃描器等輔助硬體裝置所構成的環境;軟體環境 指被測軟體運行時的作業系統、資料庫及其他應用軟體構成的環境。

  一個充分準備好的測試環境有三個優點:一個穩定、可重複的測試環境,能夠保證測試結果的正確;保證達到測試執行的技術需求;保證得到正確的、可重複的以及易理解的測試結果。

  測試載入器:並發效能測試是在用戶端執行的黑箱測試,一般不採用手工方式,而是利用工具採用自動化方 式進行。目前,成熟的並發效能測試工具有很多,選擇的依據主要是測試需求和效能價格比。著名的並發效能測試工具有QALoad、LoadRunner、 Benchmark Factory和Webstress等。這些測試載入器都是自動化負載測試工具,通過可重複的、真實的測試,能夠徹底地度量應用的可擴充性和效能,可以在整 個開發生命週期、跨越多種平台、自動執行測試工作,可以類比成百上千的使用者並發執行關鍵業務而完成對應用程式的測試。

  測試資料:在初始的測試環境中需要輸入一些適當的測試資料,目的是識別資料狀態並且驗證用於測試的 測試案例,在正式的測試開始以前對測試案例進行調試,將正式測試開始時的錯誤降到最低。在測試進行到關鍵過程環節時,非常有必要進行資料狀態的備份。製造 初始資料意味著將合適的資料存放區下來,需要的時候恢複它,初始資料提供了一個基準用來評估測試執行的結果。

  在測試正式執行時,還需要準備業務測試資料,比如測試並發查詢業務,那麼要求對應的資料庫和表中有相當的資料量以及資料的種類應能覆蓋全部業務。

  類比真實環境測試,有些軟體,特別是面向福士的商品化軟體,在測試時常常需要考察在真實環境中的表現。如測試殺毒軟體的掃描速度時,硬碟上布置的不同類型檔案的比例要盡量接近真實環境,這樣測試出來的資料才有實際意義。

  並發效能測試的種類與指標

  並發效能測試的種類取決於並發效能測試工具監控的對象,以QALoad自動化負載測試工具為例。軟 件針對各種測試目標提供了DB2、DCOM、ODBC、ORACLE、NETLoad、Corba、QARun、SAP、SQLServer、 Sybase、Telnet、TUXEDO、UNIFACE、WinSock、WWW、Java scrīpt等不同的監控對象,支援Windows和UNIX測試環境。

  最關鍵的仍然是測試過程中對監控對象的靈活應用,例如目前三層結構的運行模式廣泛使用,對中介軟體的並發效能測試作為問題被提到議事議程上來,許多系統都採用了國產中介軟體,選擇Java scrīpt監控對象,手工編寫指令碼,可以達到測試目的。

軟體效能測試指標及其注意地方

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.