軟體測試員必知!壓力測試總共需要幾個步驟?思路總結篇
在運維工作中,壓力測試是一項很重要的工作。比如在一個網站上線之前,能承受多大訪問量、在大訪問量情況下效能怎樣,這些資料指標好壞將會直接影響使用者體驗。今天我們就來深入瞭解下壓力測試!
首先, 什麼是壓力測試 ?
軟體壓力測試是一種基本的質量保證行為,它是每個重要軟體測試工作的一部分。軟體壓力測試的基本思路很簡單:不是在常規條件下執行手動或自動測試,而是在計算機數量較少或系統資源匱乏的條件下執行測試。通常要進行軟體壓力測試的資源包括內部記憶體、CPU 可用性、磁碟空間和網路頻寬。
壓力測試涵蓋,效能測試,負載測試,併發測試等等,這些測試點常常交織耦合在一起。
顧名思義: 壓力測試,就是被測試的系統,在一定的訪問壓力下,看程式執行是否穩定/伺服器執行是否穩定(資源佔用情況)。
比如:2000個使用者同時到一個購物網站購物,這些使用者開啟頁面的速度是否會變慢,或者網站是否會奔潰。
壓力測試 的 步驟
(1)確定存量資料的規模(使用者一般會要求製造出3-5年的存量資料);
(2)確定需要進行壓力測試的業務(一般是使用者使用最頻繁,或者業務操作複雜的業務);
(3)確定操作使用者的的數量、各類操作使用者的比例;
(4)峰值業務量的要求(一般是1個小時內最多要處理的筆數);
(5)對實時業務響應時間的要求(如在峰值情況下,單筆業務的處理時間(如小於60秒));
(6)對於批次處理過程的時間要求(如進行日終(月終、年終)處理、與外系統間批次資料傳輸時的時間)。
以上資訊,通常需要業務人員來確定。
為了進行壓力測試的技術準備,需要如下資料:
(1)系統概要設計(瞭解系統技術架構,確定測試方法);
(2)如果自己開發介面程式,需要了解介面報文規範;
(3)資料庫設計(我們需要據此編寫程式,準備存量資料)。
為了開發指令碼需要了解如下資訊:
(1)操作手冊(指令碼錄入或者手工開發指令碼);
(2)引數化指令碼(動態化資料需要進行關聯);
(3)指令碼回放(驗證指令碼是否可以成功的建立資料)。
測試場景:
(1)單使用者執行壓力測試場景;
(2)多使用者執行測試場景,檢視系統資源消耗等調優工作開始。
另外,還有測試環境的事情需要落實。壓力測試一般要求環境配置較高,最好與生產環境一致或者接近。
幾款流行的壓力測試工具
(1)JMeter
Apache JMeter是Apache組織開發的基於Java的壓力測試工具,用於對軟體做壓力測試,它最初被設計用於Web應用測試但後來擴充套件到其他測試領域。 它可以用於測試靜態和動態資源例如靜態檔案、Java小服務程式、CGI指令碼、Java 物件、資料庫, FTP伺服器, 等等。
JMeter可以用於對伺服器、網路或物件模擬巨大的負載,來在不同壓力類別下測試它們的強度和分析整體效能。
另外,JMeter能夠對應用程式做功能迴歸測試,透過建立帶有斷言的指令碼來驗證你的程式是否返回了期望的結果。
為了最大限度的靈活性,JMeter允許使用正規表示式建立斷言。
(2)LoadRunner
LoadRunner是惠普旗下一款自動負載測試工具,它能預測系統行為,最佳化效能。LoadRunner強調的是整個企業的系統,它透過模擬實際使用者的操作行為和實行實時效能監測,來幫助更快的確認和查詢問題。此外,LoadRunner 能支援最寬範的協議和技術,量身定做地提供解決方案。
(3)其他測試工具
Siege是一款開源的壓力測試工具,可以根據配置對一個WEB站點進行多使用者的併發訪問,
記錄每個使用者所有請求過程的相應時間,並在一定數量的併發訪問下重複進行。
TCPCopy是一種請求複製(所有基於tcp的packets)工具,可以把線上請求匯入到測試系統中去。
TCPCopy的特點是可以複製線上真實流量,模擬使用者資料。
最後,軟體壓力測試和效能測試的區別:
二者區別在於他們不同的測試目的
軟體壓力測試 是為了發現系統能支援的最大負載,他的前提是要求系統效能處在可以接受的範圍內,比如經常規定的頁面3秒鐘內響應;
所以一句話概括就是:在效能可以接受的前提下,測試系統可以支援的最大負載。
軟體效能測試 是為了檢查系統的反映,執行速度等效能指標,他的前提是要求在一定負載下,如檢查一個網站在100人同時線上的情況下的效能指標,每個使用者是否都還可以正常的完成操作等。
概括就是:在不同負載下(負載一定)時,透過一些系統引數(如反應時間等)檢查系統的執行情況。比如我們說某個網站的效能差,嚴格上應該說在N人同時線上情況下,這個站點效能很差)。
總之,就像一個方程式:綜合效能=壓力數*效能指數,
綜合效能是固定的:
軟體壓力測試是為了得到效能指數最小時候(可以接受的最小指數)最大的壓力數,軟體效能測試是為了得到壓力數確定下的效能指數。
總結:
在專案上線之前,都需要做壓力測試,目的是看下我們的網站能抗住多少的壓力,能承擔多少併發,如果不做壓力測試,一旦出現大訪問量時,我們的網站會掛掉,所以壓力測試真的很重要,都應該重視起來!
歡迎加入 51軟體測試大家庭,在這裡你將獲得【最新行業資訊】,【免費測試工具安裝包】,【軟體測試技術乾貨】,【面試求職技巧】... 51與你共同學習,一起成長!期待你的加入: QQ 群: 755431660
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2222015/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 軟體為什麼要做異常測試?測試員必知的22個測試點總結!
- 軟體測試需要具備的知識體系(個人總結)
- App 壓力測試學習總結APP
- 軟體壓力測試知識分享,2022好用壓力測試工具有哪些?
- 總結49種軟體測試方法,你知道幾個?
- Web測試入門——軟體測試員必知的50個常見測試點Web
- 什麼是軟體測試?入門測試需要具備的理論知識體系(個人總結)
- 軟體壓力測試怎麼做?出具壓力測試報告軟體測評中心測試報告
- 軟體測試基礎大總結
- 讓測試事半功倍軟體壓力測試工具分享,壓力測試報告怎麼收費?測試報告
- 軟體測試要學什麼(4)軟體測試流程及常見測試點總結
- 軟體壓力測試有哪些測試流程?軟體測試報告收費情況測試報告
- 手把手教你測試微信小程式,附軟體測試員必知的20個常見測試點微信小程式
- 軟體壓力測試流程和測試工具分享,讓你寫壓力測試報告再也不愁測試報告
- 軟體測試方法彙總
- 測試總結①
- APP UI自動化測試思路總結APPUI
- 軟體測評中心▏效能測試、壓力測試、負載測試有什麼區別?負載
- 軟體工程單元測試作業總結軟體工程
- 軟體產品為什麼要做壓力測試?壓力測試報告如何獲取?測試報告
- 軟體測試報告需要包括哪些內容?測試人員收藏這份必備指南!!!測試報告
- 壓力測試
- 測試流程總結
- 【JUnit測試】總結
- 軟體測試員如何提取測試需求?
- 軟體效能測試方法及步驟分享,權威的軟體測試公司有哪些?
- 測試面試題總結面試題
- 軟體測試之系統測試必備知識,2023年靠譜軟體測試公司推薦
- 有效提升軟體產品質量,測試人員必備軟體測試常用方法
- 軟體測試人員必備的60個測試工具清單,果斷收藏了!
- 軟體測試的四個測試階段簡析,軟體測試報告需要多少錢?測試報告
- 軟體測試:Java-String的常用方法總結Java
- (一)效能測試(壓力測試、負載測試)負載
- 初識效能測試(測試小白麵試總結)
- sysbench 壓力測試
- MACOSXApacheab壓力測試MacApache
- ORACLE壓力測試Oracle
- laravel壓力測試Laravel