本節介紹了性能測試策略制定的基本思路和方法,讀者應該認真體會這些理論,性能測試策略是后期性能測試工作的基礎,決定著性能測試工作的投入。讀者要充分意識到這一工作的重要性,認識到只有做好了前期的“路線”工作,才可以走對后面的“道路”。
3 Web性能測試模型使用方法
“全面性能測試模型”是針對Web性能測試而提出的一種方法,主要目的是為了比較全面的開展性能測試,使Web性能測試更容易組織和開展。本模型包含了測試策略制定的通用方法和測試用例設計通用方案,測試用例的設計覆蓋了應用軟件、服務器、操作系統多方面的內容,按照由淺入深的順利對性能測試進行了合理的組織。
“全面性能測試模型”是一種經很多性能測試項目抽象出來的方法論,主要用來指導測試,它一般不適合具體的性能測試項目,因為任何一個項目都會有它的特定背景。要想通過“Web全面性能測試模型”做好性能測試工作,首先要制定好性能測試策略,同時還要按照一些基本指導原則來使用“Web性能測試用例設計模型”的內容。這些原則主要包括如下的內容:
測試策略遵從最低成本原則。Web性能測試本身是一種高投入的測試,而實際中國內公司通常在測試上進行較低的投入,Web性能測試只是全部測試工作的一部分,很多項目只能進行一些重要的性能內容,這就決定測試經理制定性能測試策略時在資源投入方面一定要遵從最低成本化原則。最低成本的衡量標準主要指“投入的測試成本能否使系統滿足預先確定的性能測試目標”,只要我們經過反復的“測試——系統調優——測試”后,系統符合性能需求并有一定的擴展空間,就可以認為性能測試工作是成功的。反之,如果系統經過測試后不滿足性能需求或者滿足性能需求后仍然投入資源,都可以認為是不合理的。
策略為中心原則。本原則不但對性能測試工作有效,對其他類型的測試工作都具有同樣的指導意義。測試策略不但決定了我們測試用例設計時的主要內容,還決定著我們實施測試工作時如何根據項目的實際情況進行處理,例如:如果項目時間比較緊張,我們完全可以按照測試用例的優先級只執行一部分性能測試用例。因此,性能測試策略應該貫穿整個性能測試過程。
適當裁剪原則。裁剪原則主要是針對性能用例設計而言。Web性能測試用例設計模型主要是針對電信、銀行級的應用而提出的,包含的測試內容比較全面,而這類項目的性能測試一般周期較長、投入較大,作者曾親身經歷過測試周期為一年的銀行項目。要想性能測試用例設計模型在大多數測試項目中使用,必須對測試用例模型包含的內容進行合理的裁剪,這樣做的主要目的是為了適合特定項目的測試需求,進而節約測試成本。
裁減的主要依據是性能測試策略,我們根據策略制定方法制定出測試策略,然后依據策略從“五類性能測試用例”中選擇適當的內容來編寫測試用例。例如有些要求不高的靜態門戶網站,用戶也沒有提出性能方面的要求,我們完全可以只測試一下用戶并發情況作為系統性能的參考。
完善模型原則。本模型只是作者的工作經驗總結,由于不同的性能測試任務都有自己的項目背景,因而需要對模型內容進行不斷的調整、補充、完善,才能使之適合更多的性能測試工作。不斷完善具體來說就是要在工作中不斷總結自己的經驗,形成自己的“Web全面性能測試模型”。只有“自己的”測試模型,才是最符合自己需要的模型。
模型具體化原則。模型具體化主要是指把本模型運用到具體的項目中,是前面所有原則的目標。如果只記住模型的這些條條框框,然后生搬硬套框架來設計測試,只能得到適得其反的結果。要想使模型在Web性能工作中發揮作用,只有根據實際項目的特點制定合理的性能測試策略、編寫適當的性能測試用例,并在測試實施中靈活的執行測試方案。
綜合上面的分析,可以看出模型使用完全可以概括成兩個字——“活用”。要想真正做好性能測試工作,最有效的辦法就是在掌握基本理論和方法后,在工作中不斷的去探索和總結,不斷的完善該模型,形成自己的“Web全面性能測試模型”。
“全面性能測試模型”是一種很有效的做Web性能測試的“兵法”,這正是本篇命名為“兵法篇”的目的!氨ā笔恰皩洝眰儭按蛘獭钡谋貍渲R,學會了兵法才可以指揮戰爭,但是兵法畢竟不能代替具體的“戰術”,它只是“打勝仗”的前提條件,具體的“仗”怎么去“打”,仍然要根據具體的戰場情況來指揮。因此,具體的Web性能測試工作仍然按照項目的自身特點去組織和實施。
文章來源于領測軟件測試網 http://www.kjueaiud.com/