完整的性能测试流程软件测试性能测试流程
前言
本篇文章帶大家一起學(xué)習(xí)性能測試
1,使用jmeter工具進行接口的性能壓測
2,熟練使用jmeter工具
3,針對項目接口進行壓測(性能測試的流程和操作的過程介紹)
4,分析調(diào)優(yōu)(拓展部分)
一,關(guān)于性能測試的理論介紹
為什么要進行性能測試?
業(yè)務(wù)方面需求:
1.如每年雙十一活動/微信春晚搶紅包/12306春運訂票等
2.當(dāng)前服務(wù)器配置是否支持10000人同時使用
功能:有 /無
性能:好/壞
性能關(guān)注點:
性能(效率)
(1)時間特點:即服務(wù)器處理用戶請求的響應(yīng)時間,如卡/不卡的情況
(2)資源特點:軟件運行時,對服務(wù)器資源的消耗情況,如CPU,內(nèi)存,磁盤等
什么是性能測試?一般是指服務(wù)器的性能
使用自動化工具,模擬不同的場景,對軟件各項性能指標(biāo)進行測試和評估的過程
1.后臺處理程序的性能(代碼的性能)
2.中間件,數(shù)據(jù)庫,架構(gòu)設(shè)計等是否存在瓶頸
中間件:tomcat,apache,nginx等應(yīng)用服務(wù)器
性能測試的目的是什么?
1,評估當(dāng)前系統(tǒng)能力,如驗收第三方提供的軟件
2,找到性能瓶頸,優(yōu)化性能
3,評估軟件能否滿足未來的需求,例如 淘寶雙十一交易額逐年遞增
性能測試和功能測試比較
1.區(qū)別:關(guān)注點不一樣
功能測試:主要關(guān)注功能上(滿足條件,和不滿足條件的)
性能測試:主要關(guān)注業(yè)務(wù)場景上 (響應(yīng)時間 消耗資源)
2.功能測試和性能測試相輔相成
測試順序:一般先功能測試 ,后性能測試
性能測試的策略,即性能測試的分類有哪些?(面試高頻知識點)
1,基準(zhǔn)測試:獲取單個用戶測試的各項性能指標(biāo),為多用戶并發(fā)測試提供參考依據(jù)
2,負載測試:是驗證在不同的并發(fā)下系統(tǒng)的表現(xiàn)情況,測試30,50,80個用戶的性能
案例:健身,舉啞鈴
10斤啞鈴,舉起10個需要15秒。
20斤啞鈴,舉起10個需要15秒
30斤啞鈴,舉起10個需要15秒---最優(yōu)負載量
40斤啞鈴,舉起10個需要20秒---最優(yōu)負載量
50斤啞鈴,舉起10個需要40秒
60斤啞鈴,舉起10個需要100秒---最大負載量
70斤啞鈴,舉不起來
3,穩(wěn)定性測試:在服務(wù)器穩(wěn)定運行的情況下,進行長時間測試,時長一般為1天
4,其他:并發(fā)測試,壓力測試,容量測試
橫向坐標(biāo):系統(tǒng)當(dāng)前的用戶量,越往右用戶量越大!
縱向坐標(biāo):
1 :資源的利用情況(Utilization,包括硬件資源和軟件資源)
2:吞吐量(Throughput,這里是指每秒事務(wù)數(shù))即處理能力
3:響應(yīng)時間(Response Time),業(yè)務(wù)處理的響應(yīng)時間
(1)在A點----B點區(qū)間內(nèi),隨著用戶數(shù)量的增加 【在最優(yōu)負載內(nèi)】
系統(tǒng)資源的使用情況 在逐步增加的
系統(tǒng)處理能力也在逐步增加
系統(tǒng)的響應(yīng)時間變化不大
(2)在B點----C點區(qū)間內(nèi),隨著用戶數(shù)量的增加 【達到了最大負載量】
系統(tǒng)資源的使用情況 不變
系統(tǒng)處理能力不變
系統(tǒng)的響應(yīng)時間在逐步增加
(3)在C點----D點區(qū)間內(nèi),隨著用戶數(shù)量的增加 【系統(tǒng)崩潰,超過了最大負載量】
系統(tǒng)資源的使用情況
系統(tǒng)處理能力會減小
系統(tǒng)的響應(yīng)時間在逐步增加
系統(tǒng)處理的最大用戶數(shù)量是(B)
系統(tǒng)長時間穩(wěn)定運行時,推薦的用戶數(shù)量是(B)
并發(fā)測試:是指在極短的時間內(nèi),發(fā)送多個請求 來驗證服務(wù)器對并發(fā)的處理能力。例如 搶紅包,搶購,秒殺活動等
壓力測試:是在強負載下(大數(shù)據(jù)量,大量并發(fā)用戶下)的測試,查看應(yīng)用程序在峰值的使用情況,
(1)穩(wěn)定性壓力測試:在系統(tǒng)高負載的情況下(臨近C點)長時間運行(24小時)查看系統(tǒng)處理能力。
(2)破壞性壓力測試:在系統(tǒng)極限負載的情況下(C-D點)對系統(tǒng)進行壓力測試,查看系統(tǒng)容錯能力和錯誤恢復(fù)能力。
容量測試:關(guān)注軟件的極限壓力下的各個參數(shù)值 例如 最大TPS (每秒事務(wù)處理量(TransactionPerSecond)),最大并發(fā)數(shù),最大連接數(shù)(數(shù)據(jù)庫建立連接)
性能測試的常用指標(biāo)有哪些?(面試高頻知識點)
定義:在性能測試的過程中 記錄的數(shù)據(jù)值,用這些數(shù)據(jù)值與需求中的性能要求做對比,達到標(biāo)準(zhǔn)則無問題,未達到則是性能BUG
1.響應(yīng)時間:從客戶端發(fā)起請求開始,到客戶端從收到服務(wù)器端返回的結(jié)果的整個消耗時間
響應(yīng)時間=網(wǎng)絡(luò)時間+應(yīng)用程序處理時間
2.并發(fā)數(shù)(正在發(fā)生請求的用戶,,,)
同一時刻 不同的用戶做同一個操作或?qū)ν粋€服務(wù)器做不同的操作。
絕對并發(fā):同一時刻不同的用戶做同一個操作。
3.吞吐量:每秒服務(wù)器處理的請求個數(shù)或事務(wù)數(shù)。從技術(shù)角度衡量系統(tǒng)性能重要指標(biāo),TPS 每秒事務(wù)數(shù)
4.點擊數(shù)(使用少):只有web項目才有此指標(biāo),
5.資源使用率:指系統(tǒng)資源使用的情況, 資源利用率=資源的使用量/總的資源可用量×100%
1)建議CPU不高于80% CPU:的能力高低直接影響了整個電腦的運行速度,絕大多數(shù)的程序,都要經(jīng)過它的運算,當(dāng)然也包括病毒,如果它的使用率太高,會導(dǎo)致整個電腦的速度下降
2)內(nèi)存不高于80% 內(nèi)存:程序運行時所消耗的空間
3)磁盤不高于90% 磁盤:存儲數(shù)據(jù)文件
4)網(wǎng)絡(luò)不高于80% 影響數(shù)據(jù)的傳輸速度
6.錯誤率:系統(tǒng)在負載情況下失敗業(yè)務(wù)的概率 ,錯誤率=(失敗業(yè)務(wù)數(shù) / 業(yè)務(wù)總數(shù))*100%
性能測試的流程有哪些?(面試高頻知識點)
1.性能測試需求分析
2.性能測試計劃與方案
3.性能測試用例
4.性能測試腳本編寫/錄制
5.建立性能測試環(huán)境
6.執(zhí)行測試用例
7.性能測試監(jiān)控
8.性能分析和調(diào)優(yōu)
9.性能測試報告總結(jié)
性能測試需求分析
1,熟悉被測試的系統(tǒng)
(1)熟悉被測試的系統(tǒng)的業(yè)務(wù)功能
(2)熟悉測試系統(tǒng)的技術(shù)架構(gòu)
2.明確性能測試內(nèi)容
業(yè)務(wù)方面:確定關(guān)鍵業(yè)務(wù),即用戶使用頻率高的業(yè)務(wù)功能
技術(shù)方面:邏輯復(fù)雜高的業(yè)務(wù) 即CPU密集運行的地方
3.明確測試范圍
負載測試:最優(yōu),最大負載量
穩(wěn)定性測試:能否長時間穩(wěn)定地運行
并發(fā)測試:用戶一起使用時是否會出問題
4.確定測試指標(biāo)
沒有明確指標(biāo)時:可以參考類似系統(tǒng)對比,查相關(guān)資料,
有明確指標(biāo)時
例如:(1)下單業(yè)務(wù)并發(fā)20個用戶
(2)平均響應(yīng)時間要小于等于3S
(3)事務(wù)成功率100%
(4)CPU使用率小于等于85%
性能測試計劃與方案
1.項目背景
2.測試目的
3.測試范圍
4.測試策略
5.風(fēng)險控制
6.交付清單
7.進度與分工
性能測試用例
要素:用例標(biāo)題,用例編號,用例前置條件,用例步驟,用例預(yù)期結(jié)果,用例實際結(jié)果(需要監(jiān)控的各項性能指標(biāo))
模板如下,和功能測試用例差不多一樣
執(zhí)行測試步驟
1.測試腳本編寫/錄制:用例編寫完成后,結(jié)合用例的需要 進行測試腳本的編寫
2.搭建測試環(huán)境:一般包括硬件和軟件環(huán)境及網(wǎng)絡(luò)環(huán)境(運維和開發(fā)協(xié)助完成)
注意:盡可能和用戶使用的環(huán)境一樣
3.執(zhí)行測試腳本:先保證腳本調(diào)試通過之后,才能進入正式的壓測階段,在執(zhí)行測試腳本同時,要先進行性能運行場景的設(shè)置,再運行腳本
4.性能測試監(jiān)控:監(jiān)控服務(wù)器的各項指標(biāo) 例如:監(jiān)控CPU,內(nèi)存,網(wǎng)絡(luò),tps,磁盤等
5.性能分析和調(diào)優(yōu):對結(jié)果進行分析以后,提測系統(tǒng)存在性能的瓶頸。調(diào)優(yōu) 即讓開發(fā)改代碼
(性能的BUG數(shù)量少,但開發(fā) 修改可能一個月的時間才能修復(fù))
性能測試報告
1.性能測試需求覆蓋情況,測試過程回顧,測試中發(fā)現(xiàn)的問題,
2.各類風(fēng)險如果控制的 ,目前是否存在簽證的風(fēng)險
3.經(jīng)過本次性能測試后,總結(jié)測試經(jīng)驗和教訓(xùn)
總結(jié)
以上是生活随笔為你收集整理的完整的性能测试流程软件测试性能测试流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MATLAB调试caffe,在MATLA
- 下一篇: 电脑配置推荐电脑推荐配置