首頁技術(shù)文章正文

有哪些可以用于性能測試方法?【舉例說明】

更新時(shí)間:2023-02-03 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班


1.負(fù)載測試

在這里,負(fù)載測試指的是最常見的驗(yàn)證一般性能需求而進(jìn)行的性能測試,在上面我們提到了用戶最常見的性能需求就是“既要馬兒跑,又要馬兒少吃草”。因此負(fù)載測試主要是考察軟件系統(tǒng)在既定負(fù)載下的性能表 現(xiàn)。我們對負(fù)載測試可以有如下理解:

(1)負(fù)載測試是站在用戶的角度去觀察在一定條件下軟件系統(tǒng)的性能表現(xiàn)。

(2)負(fù)載測試的預(yù)期結(jié)果是用戶的性能需求得到滿足。此指標(biāo)一般體現(xiàn)為響應(yīng)時(shí)間、交易容量、并發(fā)容量、資源使用率等。

2.壓力測試

壓力測試是為了考察系統(tǒng)在**條件下的表現(xiàn),**條件可以是超負(fù)荷的交易量和并發(fā)用戶數(shù)。注意,這個(gè)**條件并不一定是用戶的性能需求,可能要遠(yuǎn)遠(yuǎn)高于用戶的性能需求??梢赃@樣理解,壓力測和負(fù)載測試不同的是,壓力測試的預(yù)期結(jié)果就是系統(tǒng)出現(xiàn)問題,而我們要考察的是系統(tǒng)處理問題的方式。比如說,我們 期待一個(gè)系統(tǒng)在面臨壓力的情況下能夠保持穩(wěn)定,處理速度可以變慢,但不能系統(tǒng)崩潰。因此,壓力測試是能讓我們識(shí)別系統(tǒng)的弱點(diǎn)和在極限負(fù)載下程序?qū)⑷绾芜\(yùn)行。

例子:負(fù)載測試關(guān)心的是用戶規(guī)則和需求,壓力測試關(guān)心的是軟件系統(tǒng)本身。

3.并發(fā)測試

驗(yàn)證系統(tǒng)的并發(fā)處理能力。一般是和服務(wù)器端建立大量的并發(fā)連接,通過客戶端的響應(yīng)時(shí)間和服務(wù)器端 的性能監(jiān)測情況來判斷系統(tǒng)是否達(dá)到了既定的并發(fā)能力指標(biāo)。負(fù)載測試往往就會(huì)使用并發(fā)來創(chuàng)造負(fù)載,之所 以把并發(fā)測試單獨(dú)提出來,是因?yàn)椴l(fā)測試往往涉及服務(wù)器的并發(fā)容量,以及多進(jìn)程/多線程協(xié)調(diào)同步可能帶來的問題。這是要特別注意,必須測試的。

4.基準(zhǔn)測試

當(dāng)軟件系統(tǒng)中增加一個(gè)新的模塊的時(shí)候,需要做基準(zhǔn)測試,以判斷新模塊對整個(gè)軟件系統(tǒng)的性能影響。 按照基準(zhǔn)測試的方法,需要打開/關(guān)閉新模塊至少各做一次測試。關(guān)閉模塊之前的系統(tǒng)各個(gè)性能指標(biāo)記下來作為基準(zhǔn)(Benchmark),然后與打開模塊狀態(tài)下的系統(tǒng)性能指標(biāo)作比較,以判斷模塊對系統(tǒng)性能的影響。

5.穩(wěn)定性測試

“路遙知馬力”,在這里我們要說的是和性能測試有關(guān)的穩(wěn)定性測試,即測試系統(tǒng)在一定負(fù)載下運(yùn)行長時(shí) 間后是否會(huì)發(fā)生問題。軟件系統(tǒng)的有些問題是不能一下子就暴露出來的,或者說是需要時(shí)間積累才能達(dá)到能 夠度量的程度。為什么會(huì)需要這樣的測試呢?因?yàn)橛行┸浖膯栴}只有在運(yùn)行一天或一個(gè)星期甚至更長的時(shí) 間才會(huì)暴露。這種問題一般是程序占用資源卻不能及時(shí)釋放而引起的。比如,內(nèi)存泄漏問題就是經(jīng)過一段時(shí) 間積累才會(huì)慢慢變得顯著,在運(yùn)行初期卻很難檢測出來;還有客戶端和服務(wù)器在負(fù)載運(yùn)行一段時(shí)間后,建立 了大量的連接通路,卻不能有效地復(fù)用或及時(shí)釋放。

6.可恢復(fù)測試

測試系統(tǒng)能否快速地從錯(cuò)誤狀態(tài)中恢復(fù)到正常狀態(tài)。比如,在一個(gè)配有負(fù)載均衡的系統(tǒng)中,主機(jī)承受了 壓力無法正常工作后,備份機(jī)是否能夠快速地接管負(fù)載??苫謴?fù)測試通常結(jié)合壓力測試一起來做。

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!