性能測試的分類、區別以及特色這些你都知道了嗎?

如今性能測試一個比較火的話題,究其緣由是由於如今不少公司都要求測試人員會作性能測試,因此今天小編就來普及下性能測試的幾種分類和其特色。服務器

關於性能測試有幾個名詞:性能測試、負載測試、壓力測試、併發測試,不少人都是混合使用,或者有時壓力測試,有時叫併發測試。這些名詞除了非測試人員分不清楚以外,甚至不少專業測試人員也對這些名詞會搞迷糊。下面就歷來詳細說說這些名詞之間的區別和特色。併發

一、軟件性能測試的概念:工具

性能測試方法是經過模擬生產運行的業務壓力量和使用場景組合,來測試系統的性能是否知足軟件的性能要求。通俗地說,這種方法就是要在特定的運行條件下驗證軟件系統的處理能力。性能

1)性能測試的特色:學習

(1)性能測試方法的主要目的是驗證軟件系統是否有系統具備預期的能力。測試

(2)性能測試方法要事先了解被測試系統的具體使用場景,並具備肯定的性能目標。線程

(3)性能測試方法要求在已經肯定的環境下運行。內存

也就是說,性能測試是對系統性能已經有必定了解的前提下,並對需求有明確的目標,且在已經肯定的環境下進行的一種測試。資源

二、性能負載測試開發

經過在被測軟件系統上不斷實施加壓,直到性能指標達到極限狀態,例如「響應時間」超過預約指標或都某種資源已經達到飽和狀態。

1)負載測試的特色:

(1)負載測試方法的主要目的是找到系統處理能力的極限何在。

(2)負載測試方法須要在已知的測試環境下進行,一般也須要考慮被測試系統的業務壓力量和典型場景、使得測試結果具備業務 上的實際意義。

(3)負載測試方法通常用來了解系統的性能容量,或是配合性能調優來使用。

也就是說,負載測試是對一個系統持續不斷的加壓,觀察軟件在何時已經超出「預期要求」或系統崩潰。 三、性能壓力測試(也叫強度測試)

性能壓力測試是測試軟件系統在必定飽和狀態下,例如CPU、內存在飽和使用狀況下,系統可以處理的會話能力,以及系統是否會出現錯誤現象。

1)壓力測試的特色:

(1)壓力測試方法的主要目的是檢查系統處於壓力性能下時,軟件應用的具體表現。

(2)壓力測試方法通常經過模擬負載測試等方法,使得系統的資源使用達到較高的水平。

(3)壓力測試方法通常用於測試系統的穩定性。

也就是說,壓力測試是讓系統處在很大強度的壓力之下,看系統是否穩定,注意觀察哪一個地方會出現問題。

四、性能併發測試

性能併發測試經過模擬用戶併發訪問,測試多用戶併發訪問同一個軟件、同一個模塊或者數據記錄時是否存在死鎖或其者性它的性能問題。

1)併發測試的特色:

(1)併發測試方法的主要目的是發現系統中可能隱藏併發訪問時的問題。

(2)併發測試方法主要關注系統可能存在的併發問題,例如系統中的內存泄漏、線程鎖和資源並用方面的問題。

(3)併發測試方法能夠在開發的各個階段使用,不過是須要相關的測試工具的配合和支持。

也就是說,併發測試關注點是多個用戶同時(併發)對一個模塊或操做行爲進行加壓的一種測試。

五、性能配置測試

性能配置測試是經過對被測系統的軟/硬件環境的調整,瞭解各類不一樣方法對軟件系統的性能影響的程度,從而找到系統各項資源的最優分配原則。

1)配置測試的特色:

(1)配置測試方法的主要目的是瞭解各類不一樣因素對系統性能影響的程度,從而判斷出最值得進行的調優操做。

(2)配置測試方法通常在對系統性能情況有初步瞭解後才進行。

(3)配置測試方法通常用於性能調優和軟件處理能力的規劃。

也就是說,配置測試關注點是「微調」,經過對軟硬件的不斷調整,找出軟件系統的最佳狀態,使軟件系統達到一個最穩定的狀態。 六、性能可靠性測試 性能可靠性測試是在給系統加載必定業務壓力的狀況下,使系統運行一段時間,以此檢測系統是否穩定。 1)可靠性測試的特色:

(1)可靠性測試方法的主要目的是驗證軟件系統是否支持長期穩定的運行。

(2)可靠性測試方法須要在壓力下持續一段時間的運行。

(3)可靠性測試過程當中須要關注系統的運行情況如何。

也就是說,這種測試的關注點是「穩定」,不須要給系統太大的壓力,只要系統可以長期處於一個穩定的狀態便可。

除了上面的幾種分類性能測試,還有一種是失效性測試,就是系統局部發生問題時,其它模塊是否能夠正常的運行。這個在極少數狀況下才會要求進行測試。使用到的狀況比較少。 性能測試的分類已經介紹完了,但咱們在作性能測試過程當中真的能把它們區分的很清楚嗎?你能嚴格區分出你此次的測試究竟是併發測試仍是壓力測試呢?以下舉例來講明下這個區分。 拿運動員來講,對於練過幾年時間的體育運動員來講,若是參加不少體育項目,其實不論最後參加哪項運動,最終要考覈他的就兩方面:爆發力和持久耐力。而咱們在作性能測試時主要關注的也是這兩方面的性能。

1)爆發力: 拿一個舉重選手來講,他的能力特色在重量上,由於你只要能舉起成功三秒就算你成功了,關鍵是看你能舉起一個多大的重量。

2)持久耐力: 拿一個馬拉松運動員來講,你的百米速度跑得再快也沒用,關鍵是在長達40千米遠的路程中,第一個跑到終點的人才是贏家。

從上面的舉例中回到性能測試話題上,爆發力就是系統能承受的最大壓力,可能軟件系統剛開始承受的壓力很大,但過半個小時以後就掛掉了。持久耐力就是這個軟件系統在長時間處於壓力下的穩定性,如軟件系統很穩定,運行了幾十年都不用重啓服務器,那麼最後就是看系統有沒系統瓶頸(短板),並對其進行系統調優便可。

End,今天主要是普及下軟件性能測試的分類和其特色的描述,但願能讓還對軟件性能測試還比較迷糊的同窗們一個觀點明確的幫助。

若是你們還有測試方面的問題歡迎一塊兒交流學習:672899761。

相關文章
相關標籤/搜索