性能測試的準備[1] 軟件測試
本文詳細地闡述了針對企業級Java環境的性能測試方法論,詳細說明了高效性能測試的每個步驟。該方法論描述了如何按照性能的需求從架構設計開始,進行單元測試,集成測試,和生產分段(productioin staging)測試等。描述了實現正規容量評估(capacity assessment)所需的過程,該量化過程可以明確指出你何時需要向你的計算環境增加額外資源。此外,該方法論還闡述了驗證你的測試場景是否很好地模擬了你的最終用戶的操作行為所需的必要步驟。
通過提供的一套全面的解決方案, 本文描述Quests Application Management Suite for Java and Portals是如何與該方法論相集成,從而在應用開發生命周期的每個階段保證您的成功。運用這套方法論和Quest的應用管理解決方案,您將充滿信心地把符合性能規范的應用展現給您的用戶。
本文同時強調自動化的重要性,采用自動化方式可以創建重復的測試過程并迅速報告應用代碼的質量。只有自動化方式才能保證正確地遵循這些測試過程,并且保證準確和一致地測試應用組件。
導言
性能測試已經成為軟件開發界的一個事后總結出來的想法。IDG 的研究報告指出只有20%的上線的企業Java 應用符合他們的性能要求。如果所有上線的企業Java應用中有80%不滿足他們的服務標準協議(SLAs),那么就需要花費巨大努力去分析為什么會發生這種情況以及如何解決這種問題。要想成功滿足SLA,其關鍵在于應該采用正規的性能測試方法論。本文將詳細闡述該方法論并且指出在每個測試階段所需使用的工具集,以成功確保企業應用的性能。
測試主要分兩類: 功能測試和性能測試。 本文專注于性能測試,因此本文中的所有提及的測試除非有另外說明,否則都指性能測試。
性能測試的準備
一、量化性能需求
為了量化性能要求,我們假設您已經定義了SLA。在深入分析問題之后,關鍵的負責人員應該系統地定義SLA。SLA 的主要推動者應該是應用業務負責人和應用技術負責人。 應用業務負責人,有時是應用產品經理,他負責分析商業案例并把客戶的需求轉化為SLA。其實, 只要滿足SLA, 客戶的需求也會滿足。應用技術負責人,有時是應用構架師,分析必要的技術需求,解釋用例并"真實地檢驗"SLA。因此,技術業務負責人的責任就是確保服務等級是可達到的。有效的SLA具有三個關鍵特性:
1.具體的。
2.靈活的。
3.現實的。
一個有效的SLA 必須是一個具體的值。一個用例必須在大約五秒內完成是不準確的,因此很難檢驗--5.25秒鐘是否是大約的五秒。一個具體的值便于QA在應用上線前進行測試,當應用上線后,SLA將提供對主動監測和被動監測兩種警報(Alert)的規范。同時,一個有效的SLA在分布式的變化環境中必須也是靈活的?紤]到一些未預料到的情況,我們需要對靈活性進行測量,因此用例必須采用預先定義的時間百分比的方式滿足具體的SLA值。例如,您每天使用的常用搜索引擎。當您執行一次查尋,在95%的時間里可以在2秒內完成;在每20次查詢中,有一次的響應時間是7秒;通常這種變化的范圍是可以接受的。但是如果每20次查詢中,有10次超過7秒,你可能就會考慮換個搜索引擎了。SLA不僅必須是具體的, 也要靈活,同時必須也是現實的。你可以通過要求應用業務負責人和應用技術負責人共同制定SLA的方式保證SLA是現實的。這是一個有效用例的特別關鍵的特性,這是因為在大多數情況下,SLA只由應用業務負責人單方面確定,沒有考慮應用技術負責人的意見。當技術小組接到這些性能需求時,他們往往會忽略,一個不現實的SLA比根本沒有還要糟糕。
二、了解你的用戶
文章來源于領測軟件測試網 http://www.k11sc111.com/