1
您現在的位置:
首頁
/
/
性能(néng)測試相關概念

性能(néng)測試相關概念

  • 分類:新聞資訊
  • 作者:蘇州華克斯信息科技有限公司
  • 來源:蘇州華克斯信息科技有限公司
  • 發(fā)布時(shí)間:2023-11-15
  • 訪問量:0

【概要描述】

性能(néng)測試相關概念

【概要描述】

  • 分類:新聞資訊
  • 作者:蘇州華克斯信息科技有限公司
  • 來源:蘇州華克斯信息科技有限公司
  • 發(fā)布時(shí)間:2023-11-15
  • 訪問量:0
詳情

性能(néng)測試相關概念

性能(néng)測試是通過(guò)自動化的測試工具模拟多種(zhǒng)正常、峰值以及異常負載條件來對(duì)系統的各項性能(néng)指标進(jìn)行測試。

系統的性能(néng)是一個很大的概念,覆蓋面(miàn)非常廣泛,包括執行效率、資源占用、系統穩定性、安全性、兼容性、可靠性、可擴展性等,性能(néng)測試就(jiù)是描述測試對(duì)象與性能(néng)相關的特征并對(duì)其進(jìn)行評價而實施的一類測試。

性能(néng)測試是一個統稱,它其實包含多種(zhǒng)類型,主要有負載測試、壓力測試、并發(fā)測試、容量測試等,每種(zhǒng)測試類型都(dōu)有其側重點。

1.負載測試

負載測試是指逐步增加系統負載,測試系統性能(néng)的變化,并最終确定在滿足系統性能(néng)指标的情況下,系統所能(néng)夠承受的最大負載量。負載測試類似于舉重運動,通過(guò)不斷給運動員增加重量,确定運動員身體狀況保持正常的情況下所能(néng)舉起(qǐ)的最大重量。

對(duì)于負載測試來說(shuō),前提是滿足性能(néng)指标要求。例如一個軟件系統的響應時(shí)間要求不超過(guò)2s,則在這(zhè)個前提下,不斷增加用戶訪問量,當訪問量超過(guò)1萬人時(shí),系統的響應時(shí)間就(jiù)會(huì)變慢,超過(guò)2s,從而可以确定系統響應時(shí)間不超過(guò)2s的前提下最大負載量是1萬人。

2.壓力測試

壓力測試也叫(jiào)強度測試,它是指逐步給系統增加壓力,測試系統的性能(néng)變化,使系統某些資源達到飽和或系統崩潰的邊緣,從而确定系統所能(néng)承受的最大壓力。

壓力測試與負載測試是有區别的,負載測試是在保持性能(néng)指标要求的前提下測試系統能(néng)夠承受的最大負載,而壓力測試則是使系統性能(néng)達到極限的狀态。

例如軟件系統正常的響應時(shí)間爲2s,負載測試确定訪問量超過(guò)1萬時(shí)響應時(shí)間變慢。壓力測試則繼續增加用戶訪問量觀察系統的性能(néng)變化,當用戶增加到2萬時(shí)系統響應時(shí)間爲3s,當用戶增加到3萬時(shí)響應時(shí)間爲4s,當用戶增加到4萬時(shí),系統崩潰無法響應。由此确定系統能(néng)承受的最大訪問量爲4萬。

壓力測試可以揭露那些隻有在高負載條件下才會(huì)出現的Bug(缺陷),如同步問題、内存洩漏等。

3.并發(fā)測試

并發(fā)測試是指通過(guò)模拟用戶并發(fā)訪問,測試多用戶并發(fā)訪問同一個應用、同一個模塊或者數據記錄時(shí)是否存在死鎖或其他性能(néng)問題。并發(fā)測試一般沒(méi)有标準,隻是測試并發(fā)時(shí)會(huì)不會(huì)出現意外情況,幾乎所有的性能(néng)測試都(dōu)會(huì)涉及一些并發(fā)測試,例如多個用戶同時(shí)訪問某一條件數據,多個用戶同時(shí)在更新數據,那麼(me)數據庫可能(néng)就(jiù)會(huì)出現訪問錯誤、寫人錯誤等異常情況。

4.可靠性測試

可靠性測試是指給系統加載一定的業務壓力,使其持續運行一段時(shí)間(如7×24h),測試系統在這(zhè)種(zhǒng)條件下是否能(néng)夠穩定運行。例如可以進(jìn)行使CPU保持70%~90%利用率的壓力,連續對(duì)系統加壓7×24小時(shí)的測試,然後(hòu)根據結果分析是否穩定可靠。

5.容量測試

容量測試驗證被測對(duì)象承受超額數據容量時(shí),正确處理業務請求的能(néng)力。容量測試是面(miàn)向(xiàng)數據的,并且它的目的是顯示系統可以處理目标内确定的數據容量,如并發(fā)用廣數、數據庫記錄、存儲文件數等。

容量測試是指在一定的軟硬件及網絡環境下,測試系統所能(néng)支持的最大用戶數、最大存儲量等。容量測試通常與數據庫、系統資源(如CPU、内存、磁盤等)有關,用于規劃將(jiāng)來需求增長(cháng)(如用戶增長(cháng)、業務量增加等)時(shí),對(duì)數據庫和系統資源的優化。

針對(duì)上述負載測試、壓力測試、容量測試舉個例子

例:一個人背X斤

負載測試:200斤情況下,是否能(néng)堅持5分鍾。

壓力測試:200,300,400... 斤情況下,他的表現,什麼(me)時(shí)候失敗,失敗之後(hòu)什麼(me)表現,重新扛200是否正常。    

容量測試:在堅持5分鍾的情況下,他一次最多能(néng)扛多少斤。

常見術語有響應時(shí)間、并發(fā)用戶數、吞吐量、吞吐率、點擊率、資源使用率、性能(néng)計數器等。

1、響應時(shí)間 RT

響應時(shí)間是指用戶從客戶端發(fā)送請求到所有的請求都(dōu)從服務器返回客戶所經(jīng)曆的時(shí)間。

概念:響應時(shí)間是指客戶端/系統從發(fā)出請求開(kāi)始,到接收到全部響應數據所有的時(shí)間。

注意:是從請求發(fā)送開(kāi)始到接收到全部響應數據,強調全部。

誤區:很多時(shí)候,用戶會(huì)將(jiāng)發(fā)送請求到接收到響應數據視爲響應時(shí)間。

2并發(fā)用戶數

關于用戶并發(fā)的數量,有兩(liǎng)種(zhǒng)常見的錯誤觀點。

一種(zhǒng)錯誤觀點是把并發(fā)用戶數量理解爲使用系統的全部用戶的數量,理由是這(zhè)些用戶可能(néng)同時(shí)使用系統;

還(hái)有一種(zhǒng)比較接近正确的觀點是把在線用戶數量理解爲并發(fā)用戶數量

實際上在線用戶也不一定會(huì)和其他用戶發(fā)生并發(fā),例如正在浏網頁信息的用戶,對(duì)服務器沒(méi)有任何影響。并發(fā)主要針對(duì)Web服務器而言,是否并發(fā)的關鍵是看用戶的操作是否對(duì)服務器産生影響。

因此用戶并發(fā)數量的正确理解是,在同一時(shí)刻與服務器進(jìn)行交互的在線用戶數量,這(zhè)些用戶的最大特征是和服務器發(fā)生了交互。

-----此段引用《Web性能(néng)測試實戰》一書。

Web性能(néng)測試實戰》

在工作中,對(duì)于并發(fā)用戶這(zhè)個概念的理解經(jīng)常會(huì)出現以下兩(liǎng)種(zhǒng)誤區:

一是認爲系統所有的用戶都(dōu)是并發(fā)用戶;

二是認爲所有在線的用戶都(dōu)是并發(fā)用戶。

系統使用中所有的用戶是指所有可能(néng)用到該系統的用戶,但這(zhè)并不是并發(fā)用戶數。

在線用戶指當前正在使用系統的用戶,但在線用戶不一定是并發(fā)用戶,因爲在線用戶不一定就(jiù)與系統進(jìn)行了數據交互。

3吞吐量

在性能(néng)測試過(guò)程中,吞吐量是指單位時(shí)間内服務器處理客戶請求的數量,吞吐量通常使用請求數/秒來衡量,直接體現服務器的承載能(néng)力。

吞吐量作爲性能(néng)測試過(guò)程中主要的指标之一,它與虛拟用戶數之間存在一定的聯系    

但在實際測試過(guò)程中,測試前吞吐量是不知道(dào)的,必須通過(guò)不斷添加虛拟用戶來不斷地測試,才能(néng)找到吞吐量的拐點,即服務器實際吞吐量的值。

4吞吐率

吞吐率(Throughout)是指單位時(shí)間内從服務器返回的字節數,也可以指單位時(shí)間内服務器處理客戶提交的請求數。它是衡量網絡性能(néng)的一個重要指标。吞吐率=吞吐量/測試時(shí)間,通常情況下吞吐量的值越大,吞吐率的值也越大,那麼(me)系統的負載能(néng)力越強。

TPS(Transaction Per Second)表示服務器每秒處理的事(shì)務數,它是衡量系統處理能(néng)力的重要指标。

5點擊率

點擊率(Hit Per Second)是指每秒鍾用戶向(xiàng)服務器提交的 HTTP 數量。用戶每點擊一次,服務器端就(jiù)要對(duì)用戶提交的請求進(jìn)行一次處理,從事(shì)務的角度來說(shuō),如果把每次點擊作爲提交事(shì)務來對(duì)待,那麼(me)點擊率與 TPS 的概念是等同的。對(duì)于 Web 系統來說(shuō),點擊率是服務器處理的最小單位,點擊率的值越大,說(shuō)明服務器端所能(néng)承受的壓力越大。因此通常情況下,Web 服務器都(dōu)具有防刷新的機制,因爲客戶每刷新一次系統就(jiù)要響應一次點擊,如果不對(duì)服務器進(jìn)行防刷新處理,當用戶不停地單擊刷新按鈕,此時(shí)服務器將(jiāng)承受著(zhe)巨大的壓力。    

需要注意的是,單擊一次并不代表客戶端隻向(xiàng)服務器端發(fā)送一個 HTTP 請求,客戶每單擊一次,都(dōu)可能(néng)會(huì)向(xiàng)服務器端發(fā)出多個 HTTP 請求。點擊率越高,說(shuō)明客戶端提交的請求數越多,正常情況下并發(fā)的虛拟用戶數越多,客戶端提交的請求數越多。

6資源使用率

資源使用率是指服務器系統不同硬件資源被使用的程度,主要包括 CPU 使用率、内存使用率、磁盤使用率、網絡等。資源使用率=資源實際使用量/總的可用資源量。資源利用率表現當前服務器資源使用的情況,它是分析服務器出現瓶頸和對(duì)服務器進(jìn)行調優的主要依據,在配置調優測試的過(guò)程中,通過(guò)比較配置調優前後(hòu)系統資源的使用率來判斷調優的效果。

7性能(néng)計數器

系統性能(néng)包括兩(liǎng)部分:時(shí)間和空間。空間指的是系統硬件資源的使用情況,性能(néng)測試工具是如何來監控硬件資源(如 CPU、内存、磁盤)的使用情況呢? 性能(néng)測試工具并沒(méi)有現成(chéng)的指标可以直接監控這(zhè)些硬件資源使用的情況,依靠的是不同硬件資源所對(duì)應的計數器來監控。

性能(néng)計數器(Counter)是描述服務器或操作系統硬件使用情況的一系列數據指标。當然數據庫、Web 服務器和應用服務器也存在對(duì)應的計數器,但其他歸根到底都(dōu)是在消耗服務器的硬件資源。通過(guò)添加計數器來觀察系統資源的使用情況。監控不同的對(duì)象有著(zhe)不同的計數器,主要包括操作系統性能(néng)計數器、數據庫計數器、應用服務器計數器等。    

計數器在性能(néng)測試過(guò)程中發(fā)揮著(zhe)監控和分析的關鍵作用,尤其是在分析系統的可擴展性和對(duì)性能(néng)瓶頸進(jìn)行定位時(shí),計數器的阈值起(qǐ)著(zhe)非常重要的作用。必須注意的是,一般情況下,單一的性能(néng)計數器隻能(néng)體現系統性能(néng)的某一個方面(miàn),在性能(néng)測試過(guò)程中分析測試結果時(shí),必須基于多個不同的計數器進(jìn)行分析。

在性能(néng)測試中常用資源利用率進(jìn)行橫向(xiàng)對(duì)比。如在進(jìn)行性能(néng)測試時(shí)發(fā)現,某個資源的使用率很高,幾乎達到 100%,假設該資源是 CPU,而其他資源的使用率又比較低,此時(shí)可以很清楚地知道(dào),CPU 是系統性能(néng)的瓶頸。

8思考時(shí)間

概念:思考時(shí)間是指用戶在操作時(shí),每個請求之間的時(shí)間間隙。

對(duì)于交互系統來說(shuō),不可能(néng)持續不斷的發(fā)送請求,一般情況下,用戶在向(xiàng)服務端發(fā)送一個請求後(hòu),會(huì)等待一段時(shí)間發(fā)下一個請求,在性能(néng)測試過(guò)程中使用思考時(shí)間來描述。

這(zhè)個時(shí)間,在腳本中,兩(liǎng)個請求之間的時(shí)間間隔就(jiù)是思考時(shí)間,也成(chéng)爲休眠時(shí)間。

掃二維碼用手機看

更多資訊

聯系我們

聯系我們

發(fā)布時(shí)間:2020-09-16 13:55:16
地址:蘇州市工業園區新平街388号
          騰飛創新園塔樓A617
電話:400-028-4008
          0512-62382981

關注我們

這(zhè)是描述信息

頁面(miàn)版權所有 -  蘇州華克斯信息科技有限公司  |  Copyright - 2020 All Rights Reserved.