軟件測試中性能測試方法學習
2022-01-27點擊量:1384
性能測試方法性能測試的目的是測試產(chǎn)品真實規(guī)格是否和說明書中承諾的需求規(guī)格一致,我們實測出來的性能值,就是系統(tǒng)真正能夠處理的最大容量或者能力。一般來說,產(chǎn)品的需求規(guī)格會給岀性能期望值,測試者只需要確認產(chǎn)品能否達到規(guī)格即可。從這個角度來說,需求規(guī)格中對性能部分的定義和要求,會直接影響性能測試的范圍,影響性能測試的深度和廣度:假如需求規(guī)格中對產(chǎn)品性能規(guī)格定義得很簡單、很粗糙,是不是只簡單粗糙地測試一下就夠了呢?答案是否定的。在性能測試中,我們除了確認性能規(guī)格是否滿足外,還希望能夠發(fā)現(xiàn)產(chǎn)品的性能“瓶頸”,并評估產(chǎn)品在用戶使用環(huán)境中的性能表現(xiàn)。1.測試出系統(tǒng)最好的性能值在進行性能測試時,我們可以先試著測試出系統(tǒng)最好的性能值。我們可以以性能規(guī)格中要求的性能值作為測試的項目,測試岀這些指標在系統(tǒng)中的極限。不同產(chǎn)品的性能規(guī)格可能會千差萬別,但總的來說,卻可以分為以下兩類。1)系統(tǒng)能夠正確處理新業(yè)務的最大能力系統(tǒng)能夠正確處理新業(yè)務的最大能力,我們也稱為“新建”。例如,系統(tǒng)每秒能夠允許多少新用戶上線登錄、系統(tǒng)每秒能夠主動發(fā)起多少新的連接等。針對系統(tǒng)的新建能力進行性能測試,測試的是系統(tǒng)為一個新業(yè)務從分配資源到完成處理流程的速度。業(yè)務處理流程和資源的總量都會影響系統(tǒng)的新建能力。需要注意的是,系統(tǒng)不能只“建”不“拆”:已經(jīng)完成或異常的業(yè)務需要被及時拆除,占用的資源要能夠被回收,用于新的業(yè)務。系統(tǒng)拆除業(yè)務的速度應該高于新建業(yè)務的速度,至少要能夠持平。如果系統(tǒng)拆除業(yè)務的速度過慢,久而久之,能夠用于新建業(yè)務的資源就會減少,系統(tǒng)新建業(yè)務的能力就會下降,達不到規(guī)格的要求。所以對“新建”而言,“拆除”也是重要的測試項目之一。2)系統(tǒng)能夠同時正確處理的最大業(yè)務能力系統(tǒng)能夠同時正確處理的最大業(yè)務能力,我們也稱為“并發(fā)”。例如,系統(tǒng)能夠支持的最大用戶同時在線數(shù)、系統(tǒng)能夠同時發(fā)起的最大連接數(shù)等。和用戶體驗相關的一些指標,如響應時間,可以作為“新建”和“并發(fā)”測試時的檢査點。需要特別指出的是,“新建”和“并發(fā)”之間是存在關系的。2.分析會影響性能值的各種因素,測試它們對性能的影響“配置”和“業(yè)務”都會對性能指標產(chǎn)生影響。試想一下,配置了1條用戶策略和配置了1000條用戶策略的性能應該是不同的;系統(tǒng)接收1字節(jié)大小的郵件和接收10M大小的郵件測試出來的性能值也是不同的。在這個步驟中,我們要分析出系統(tǒng)中的哪些因素對性能有影響(性能下降),然后進行測試,分析性能下降是否符合預期,最壞的情況是否還算合理。以“用戶發(fā)送郵件”為例,我們要測試的性能指標是郵件系統(tǒng)每秒能夠接收并正確處理的最大郵件數(shù),結果為每秒3000封。接下來我們分析哪些因素會影響這個指標。假設分析結果是接收的郵件大小和配置的郵件過濾策略都會影響這個指標。然后我們就分別測試接收的郵件大小和配置的郵件過濾策略會如何影響郵件系統(tǒng)每秒能夠接收并正確處理的最大郵件數(shù)。對'“接收的郵件大小”這個因素,假設系統(tǒng)支持的能夠接收的郵件大小范圍為lbit銆?0MB,我們可以在這個范圍中選擇一些“樣本點”,如lbit、1KB、1MB、10MB,然后分別測試當系統(tǒng)收到這些大小的郵件時,能夠正確處理的最大郵件數(shù)。3.以場景為單位來測試性能最后我們以“場景”為單位,來測試這個場景中的典型配置、典型業(yè)務下的性能值。以“用戶發(fā)送郵件”為例,假設在這個場景下,典型的配置為“200條過濾策略”,郵件大小為1KB、10KB、2MB以丨:2:1混合,性能測試項目為:在200條過濾策略,1KB、10KB和2MB的郵件大小以1:2:1混合的情況下,郵件系統(tǒng)每秒能夠接收并正確處理的最大郵件數(shù)。以場景為單位來進行性能測試,能夠很好地評估產(chǎn)品在用戶使用環(huán)境中的性能表現(xiàn),對用戶更有實際意義。...