性能測試不僅僅是為了驗收的要求,也是對產(chǎn)品在實際使用中可能會發(fā)生的性能瓶頸的情況進行模擬預判。軟件性能測試,全稱叫軟件性能效率測試,與產(chǎn)品性能有比較大的區(qū)別,平時提到的產(chǎn)品性能大部分是指產(chǎn)品能實現(xiàn)的功能,而在軟件領(lǐng)域,性能主要從時間、空間、效率幾個維度考量。性能測試評估系統(tǒng)響應(yīng)時間、吞吐量、并發(fā)用戶數(shù)、資源利用率等指標,目標是定位性能瓶頸、優(yōu)化系統(tǒng)架構(gòu)與配置、保障高并發(fā)穩(wěn)定運行、提升用戶體驗。
常見的性能指標包括:并發(fā)用戶數(shù),功能響應(yīng)時間、資源利用率、業(yè)務(wù)TPS等。
一、關(guān)鍵指標解析
1. 響應(yīng)時間:用戶操作至系統(tǒng)響應(yīng)的時長,含網(wǎng)絡(luò)、服務(wù)器處理、數(shù)據(jù)庫查詢等環(huán)節(jié)耗時。
細分平均、最大、最小響應(yīng)時間剖析性能波動,如金融交易系統(tǒng),毫秒級響應(yīng)差異影響交易決策與客戶留存,精準監(jiān)測優(yōu)化響應(yīng)時間是提升性能核心任務(wù)。
2. 吞吐量:單位時間處理請求量或傳輸數(shù)據(jù)量,反映系統(tǒng)處理能力與效率。
網(wǎng)絡(luò)吞吐量測帶寬利用,事務(wù)吞吐量衡業(yè)務(wù)處理效率,依系統(tǒng)特性關(guān)注不同吞吐量指標優(yōu)化性能,如視頻流服務(wù)聚焦高帶寬網(wǎng)絡(luò)吞吐量提升畫質(zhì)流暢度。
3. 并發(fā)用戶數(shù):同時與系統(tǒng)交互用戶量,分絕對并發(fā)(實際同時在線)與相對并發(fā)(模擬并發(fā))。
精準預估并發(fā)用戶數(shù)設(shè)測試場景,挖掘高并發(fā)下系統(tǒng)資源爭用、性能衰減問題,如社交平臺高峰時段并發(fā)測試優(yōu)化服務(wù)容量與響應(yīng)策略。
4. 資源利用率:系統(tǒng)運行時 CPU、內(nèi)存、磁盤 I/O、網(wǎng)絡(luò)帶寬等資源使用比例。
二、軟件性能測試的方法
1.基準測試:確定系統(tǒng)的基準性能水平,通常在系統(tǒng)部署前進行,作為后續(xù)性能優(yōu)化和比較的參考。
2.負載測試:模擬正常和峰值負載條件,檢查系統(tǒng)的承載能力。
3.壓力測試:將系統(tǒng)負載推到極限,觀察其行為和恢復能力。
4.并發(fā)測試:評估系統(tǒng)同時處理多個用戶請求的能力。
5.容量測試:確定系統(tǒng)可以支持的最大用戶數(shù)或事務(wù)量。
6.可靠性測試:測試系統(tǒng)在長時間運行或高負載下的穩(wěn)定性和可靠性。
7.配置測試:驗證不同硬件配置、操作系統(tǒng)版本等因素對性能的影響。
三、性能測試常用的重要術(shù)語
1.用戶數(shù)
有時會看到下面這樣的描述:一個系統(tǒng)注冊用戶達到6000萬人,其中每小時的活躍用戶大概在60萬人左右。這段描述介紹了兩個信息,第一個信息:6000萬人指的是注冊用戶,第二個信息:60萬人指的是真實在線用戶。
1.1注冊用戶數(shù)(系統(tǒng)用戶數(shù))
注冊用戶是存在于系統(tǒng)數(shù)據(jù)庫表中的基礎(chǔ)數(shù)據(jù)。這部分用戶是指系統(tǒng)所擁有的所有用戶群體。這些用戶是不會全部對系統(tǒng)造成壓力的,唯一的壓力就是這些用戶占用了系統(tǒng)的存儲,影響了數(shù)據(jù)庫的容量。
1.2在線用戶
在線用戶是真實產(chǎn)生壓力的用戶,這些用戶是壓力的根源,也就是系統(tǒng)要能夠支持這么多人同時在線業(yè)務(wù)。
同時在線用戶數(shù):在一定的時間范圍內(nèi),最大的同時在線用戶數(shù)量。
同時在線用戶數(shù) = 每秒請求數(shù)RPS(吞吐量)+并發(fā)連接數(shù)+平均用戶思考時間。
1.3并發(fā)用戶
在線用戶是真實的用戶,但不是所有的在線用戶都會在系統(tǒng)上操作,可能有些用戶在瀏覽網(wǎng)頁、有些用戶在做業(yè)務(wù)、有些用戶只是開著瀏覽器。這時在線用戶對系統(tǒng)產(chǎn)生壓力的用戶只有一部分,而這部分用戶就是在線用戶中的有效并發(fā)用戶。
2.響應(yīng)時間
對請求作出響應(yīng)所需要的時間:網(wǎng)絡(luò)傳輸時間:N1(發(fā)送請求)+N2(內(nèi)部處理請求)+N3(返回結(jié)果)+N4(展示結(jié)果)應(yīng)用服務(wù)器處理時間:A1(處理請求)+A3(返回結(jié)果)數(shù)據(jù)庫服務(wù)器處理時間:A2(操作數(shù)據(jù)庫時間)
響應(yīng)時間=N1+N2+N3+N4+A1+A3+A2
在性能測試結(jié)果分析中,分為事務(wù)最小響應(yīng)時間、事務(wù)平均響應(yīng)時間、事務(wù)最大響應(yīng)時間和90%事務(wù)響應(yīng)時間。一般時間的標準時間為90%響應(yīng)時間,即測試過程中90%的業(yè)務(wù)用了多長時間。
3.吞吐量(一般指字節(jié))
吞吐量是一次性能測試過程中網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量的總和,也可以這樣說在單次業(yè)務(wù)中,客戶端與服務(wù)器端進行的數(shù)據(jù)交互總量;
對于交互式應(yīng)用來說,吞吐量指標反映的是服務(wù)器承受的壓力,他能夠說明系統(tǒng)的負載能力
一個系統(tǒng)吞吐量通常由QPS(TPS)、并發(fā)數(shù)兩個因素決定,每套系統(tǒng)這兩個值都有一個相對極限值,在應(yīng)用場景訪問壓力下,只要某一項達到系統(tǒng)最高值,系統(tǒng)的吞吐量就上不去了,如果壓力繼續(xù)增大,系統(tǒng)的吞吐量反而會下降,原因是系統(tǒng)超負荷工作,上下文切換、內(nèi)存等等其它消耗導致系統(tǒng)性能下降。
4.吞吐率(一般指字節(jié))
吞吐率作為一個重要的衡量指標,最主要應(yīng)用在并行處理上,屬于系統(tǒng)結(jié)構(gòu)中最重要的一個變量,它的定義是:單位時間的吞吐量。
吞吐率在性能測試中指單位時間內(nèi)在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量。是衡量網(wǎng)絡(luò)性能的主要指標。
從網(wǎng)絡(luò)角度看,吞吐率可以用:字節(jié)/秒來衡量。
從業(yè)務(wù)角度看,吞吐率可以用:請求數(shù)/秒、頁面數(shù)/秒、人數(shù)/天或處理業(yè)務(wù)數(shù)/小時 等單位來衡量。
以不同方式表達的吞吐率可以說明不同層次的問題。
我們秉承科學嚴謹?shù)墓ぷ鲬B(tài)度,以客戶為中心,高效統(tǒng)籌安排測試計劃,竭力縮短測試時間的周期,為客戶提供快捷、公正的第三方咨詢檢測等服務(wù)。服務(wù)區(qū)域遍布廣東廣州、深圳、東莞、佛山、中山、珠海、清遠、惠州、茂名、揭陽、梅州、江門、肇慶、汕頭、潮州、河源、韶關(guān)及全國各地如您有相關(guān)產(chǎn)品需要咨詢,歡迎您直接來電咨詢我司工作人員,獲得詳細的費用報價與周期方案等信息,深圳訊科期待您的光臨!