中間件性能測試的目的
● 查找軟件的性能瓶頸
誰都希望自己的軟件性能比別人的高,所以我們不停的查找性能的瓶頸,通過代碼分析,架構(gòu)調(diào)整,采用新技術(shù)等,不斷對產(chǎn)品進行優(yōu)化。我們希望能夠不斷發(fā)現(xiàn) 性能瓶頸,不斷消除瓶頸,使得軟件的性能越來越高,測試過程作為驗證性能是否達(dá)到設(shè)計要求的一個環(huán)節(jié),采用測試程序?qū)浖恼w或某個模塊不斷測試、不斷 采樣、不斷加壓,驗證軟件的性能表現(xiàn),通過對測試結(jié)果的分析、對比等,判斷是否存在某個性能瓶頸。所以性能測試的第一個目的是發(fā)現(xiàn)性能瓶頸,發(fā)現(xiàn)問題,才 有解決問題的可能性。
產(chǎn)生性能的瓶頸可能外部因素,例如網(wǎng)絡(luò)、CPU等,對于產(chǎn)生性能瓶頸的外部因素,實際上是軟件對這些資源的使用低效。也可能是內(nèi)部因素,包括實現(xiàn)的算法選擇、共享資源的訪問、模塊之間的調(diào)用和配合等。
● 查找性能異常
一個軟件理想的性能表現(xiàn)是,在一定的環(huán)境下,性能能夠在一定的水平上保持較大的壓力區(qū)間,當(dāng)壓力超過一定的值以后,性能才下降,這個壓力區(qū)間越大,代表軟件能夠支持的系統(tǒng)規(guī)模越大,性能指標(biāo)具有更強的競爭力。
但是事情有時候并不像我們期望的那樣完美,總是會有那么一個點或者是一個小的區(qū)間的性能明顯低于它的鄰居的性能,在整個性能曲線上,看起來非常的不完美 和不合群,這些點或者是小的區(qū)間,就是整個軟件性能表現(xiàn)異常的部分,如果存在這樣的部分,對于軟件來講,已經(jīng)不是性能瓶頸的問題了,應(yīng)該定義為軟件性能的 bug。
所以軟件性能測試的另一個目的就是檢驗軟件是否存在這樣的點或區(qū)間,軟件的性能表現(xiàn)不太正常。
● 檢驗性能的穩(wěn)定性
一個軟件的性能的完美表現(xiàn),不僅僅是檢驗它的性能有多高,而是在滿足系統(tǒng)的性能要求的前期下,這個性能是否能夠穩(wěn)定的表現(xiàn)出來,需要把這個性能表現(xiàn)放在時間軸上來衡量。
軟件的性能的穩(wěn)定性測試是選取性能的最優(yōu)表現(xiàn)時的壓力和配置,長時間運行測試實例,檢驗在這樣的場景下,軟件性能是否能夠一直穩(wěn)定在這樣的最優(yōu)值,并且系統(tǒng)的資源的占用沒有增長的趨勢。
性能其實也有穩(wěn)定性測試。
● 提供性能參考指標(biāo)
性能測試首先是發(fā)現(xiàn)產(chǎn)品的性能異常,也就是前面提到的三個性能測試目的。對于一個產(chǎn)品,最終的目的還是展現(xiàn)給用戶,所以性能測試的其中一個目的就是整理出一份全面的性能測試報告。
性能測試報告中能夠體現(xiàn)出軟件的主要使用場景的性能表現(xiàn)。通過這份性能測試報告,支持人員能夠給用戶推薦產(chǎn)品的合理配置,用戶可以作為系統(tǒng)建設(shè)的參考等。
● 系統(tǒng)容量測試
我們都知道,當(dāng)系統(tǒng)的壓力達(dá)到一定值后,軟件的性能會開始下降。那么對于性能開始下降的這部分結(jié)果是不是就沒有參考價值了呢?我們看一個一般的用戶需 求:“正常情況下滿足10000用戶在線,峰值能夠滿足15000人在線,響應(yīng)時間<1秒”。對于這樣的需求,整個系統(tǒng)的設(shè)計,一定是按照10000用戶 來設(shè)計的,這個時候的性能可以理解為系統(tǒng)的最優(yōu)性能。如果按照15000用戶來設(shè)計最優(yōu)性能,投入產(chǎn)出比就會小。當(dāng)然前提是能夠滿足用戶的響應(yīng)時間的要 求。
系統(tǒng)容量測試,實際上也是給技術(shù)人員或用戶一個性能參考。
posted on 2012-08-31 09:57 順其自然EVO 閱讀(211) 評論(0) 編輯 收藏 所屬分類: 性能測試