壓力測試
壓力測試是一種軟件測試,用于驗(yàn)證軟件應(yīng)用程序的穩(wěn)定性和可靠性。壓力測試的目標(biāo)是在極其沉重的負(fù)載條件下測量軟件的健壯性和錯(cuò)誤處理能力,并確保軟件在危急情況下不會(huì)崩潰。它甚至可以測試超出正常工作點(diǎn)的測試,并評(píng)估軟件在極端條件下的工作情況。
在軟件工程中,壓力測試也被稱為耐力測試。在壓力測試中,對AUT進(jìn)行短時(shí)間的壓力測試,以了解其承受能力。壓力測試最突出的用途是確定系統(tǒng)或軟件或硬件崩潰的極限。它還檢查系統(tǒng)是否在極端條件下顯示出有效的錯(cuò)誤管理。
從網(wǎng)站復(fù)制5GB數(shù)據(jù)并粘貼到記事本中,會(huì)對正在測試的應(yīng)用程序施加壓力。記事本處于壓力下,并給出“未響應(yīng)”錯(cuò)誤消息。
需要壓力測試的場景
考慮下面的實(shí)時(shí)例子,我們可以發(fā)現(xiàn)壓力測試的用法
在節(jié)日期間,在線購物網(wǎng)站可能會(huì)迎來流量高峰,或者宣布打折。
當(dāng)一個(gè)博客在一家主要報(bào)紙上被提及時(shí),它的流量就會(huì)突然激增。
必須進(jìn)行壓力測試以適應(yīng)這種異常的流量峰值。未能適應(yīng)這種突然的流量可能會(huì)導(dǎo)致收入和聲譽(yù)的損失。
壓力測試也非常有價(jià)值,原因如下:
檢查系統(tǒng)是否處于異常狀態(tài)。
當(dāng)系統(tǒng)處于壓力下時(shí)顯示適當(dāng)?shù)腻e(cuò)誤消息。
系統(tǒng)在極端條件下的故障可能導(dǎo)致巨大的收入損失
最好通過執(zhí)行壓力測試來為極端條件做好準(zhǔn)備。
壓力測試的目標(biāo)
壓力測試的目標(biāo)是分析系統(tǒng)發(fā)生故障后的行為。為了使壓力測試成功,系統(tǒng)在極端條件下應(yīng)該顯示適當(dāng)?shù)腻e(cuò)誤消息。
為了進(jìn)行壓力測試,有時(shí)可能會(huì)使用大量的數(shù)據(jù)集,這些數(shù)據(jù)集可能在壓力測試過程中丟失。測試人員在進(jìn)行壓力測試時(shí)不應(yīng)該丟失這些與安全性相關(guān)的數(shù)據(jù)。
壓力測試的主要目的是確保系統(tǒng)在故障后能夠恢復(fù),這稱為可恢復(fù)性。
負(fù)載測試Vs壓力測試
負(fù)載測試 |
壓力測試 |
負(fù)載測試是測試系統(tǒng)在正常工作負(fù)載條件下的行為,它只是用實(shí)際工作負(fù)載進(jìn)行測試或模擬。 |
壓力測試是測試系統(tǒng)在極端條件下的行為,一直進(jìn)行到系統(tǒng)故障為止。 |
負(fù)載測試不會(huì)破壞系統(tǒng) |
壓力測試試圖通過測試壓倒性的數(shù)據(jù)或資源來破壞系統(tǒng)。 |
壓力測試的類型
以下是壓力測試的類型,解釋如下:
分布式壓力測試:
在分布式客戶端-服務(wù)器系統(tǒng)中,測試是從服務(wù)器跨所有客戶機(jī)完成的。壓力服務(wù)器的作用是向所有壓力客戶端分發(fā)一組壓力測試,并跟蹤客戶端的狀態(tài)??蛻舳伺c服務(wù)器聯(lián)系后,服務(wù)器添加客戶端名稱,并開始發(fā)送數(shù)據(jù)進(jìn)行測試。
同時(shí),客戶端機(jī)器發(fā)送與服務(wù)器連接的信號(hào)或心跳。如果服務(wù)器沒有從客戶端機(jī)器接收到任何信號(hào),則需要進(jìn)一步研究以進(jìn)行調(diào)試。從圖中可以看出,一個(gè)服務(wù)器可以連接2個(gè)客戶端(Client1和Client2),但它不能從客戶端3和4發(fā)送或接收信號(hào)。
夜間運(yùn)行是運(yùn)行這些壓力測試場景的最佳選擇。大型服務(wù)器群需要一種更有效的方法來確定哪些計(jì)算機(jī)發(fā)生了需要調(diào)查的壓力故障。
應(yīng)用程序壓力測試
此測試集中于發(fā)現(xiàn)與應(yīng)用程序中的數(shù)據(jù)鎖定和阻塞、網(wǎng)絡(luò)問題和性能瓶頸相關(guān)的缺陷。
事務(wù)性壓力測試
它對兩個(gè)或多個(gè)應(yīng)用程序之間的一個(gè)或多個(gè)事務(wù)進(jìn)行壓力測試。用于系統(tǒng)的微調(diào)和優(yōu)化。
系統(tǒng)壓力測試
這是集成的壓力測試,可以跨運(yùn)行在同一服務(wù)器上的多個(gè)系統(tǒng)進(jìn)行測試。它用于發(fā)現(xiàn)一個(gè)應(yīng)用程序數(shù)據(jù)阻塞另一個(gè)應(yīng)用程序的缺陷。
探索性壓力測試
這是壓力測試的一種類型,用于測試具有不尋常參數(shù)或在真實(shí)場景中不太可能發(fā)生的條件的系統(tǒng)。它用于在意想不到的場景中發(fā)現(xiàn)缺陷,例如
大量用戶同時(shí)登錄
如果病毒掃描程序在所有計(jì)算機(jī)中同時(shí)啟動(dòng)
如果從網(wǎng)站訪問數(shù)據(jù)庫時(shí),數(shù)據(jù)庫已離線,
當(dāng)大量數(shù)據(jù)同時(shí)被插入數(shù)據(jù)庫時(shí)
如何進(jìn)行壓力測試?
壓力測試過程可分為5個(gè)主要步驟:
步驟1)計(jì)劃壓力測試:在這里您收集系統(tǒng)數(shù)據(jù),分析系統(tǒng),定義壓力測試目標(biāo)
步驟2)創(chuàng)建自動(dòng)化腳本:在這個(gè)階段,您創(chuàng)建壓力測試自動(dòng)化腳本,為壓力場景生成測試數(shù)據(jù)。
步驟3)腳本執(zhí)行:在這個(gè)階段,您運(yùn)行壓力測試自動(dòng)化腳本并存儲(chǔ)壓力結(jié)果。
步驟4)結(jié)果分析:在此階段,您將分析壓力測試結(jié)果并識(shí)別瓶頸。
步驟5)調(diào)整和優(yōu)化:在這個(gè)階段,你微調(diào)系統(tǒng),改變配置,優(yōu)化代碼以達(dá)到預(yù)期的基準(zhǔn)。
最后,再次運(yùn)行整個(gè)周期,以確定調(diào)整是否產(chǎn)生了所需的結(jié)果。例如,為了實(shí)現(xiàn)性能目標(biāo),必須進(jìn)行3到4個(gè)壓力測試周期是很正常的
壓力測試推薦的工具
LoadRunner
來自HP的LoadRunner是一個(gè)廣泛使用的負(fù)載測試工具。由Loadrunner形成的負(fù)載測試結(jié)果被視為基準(zhǔn)。
Jmeter
Jmeter是一個(gè)開源的測試工具。它是一個(gè)用于壓力和性能測試的純Java應(yīng)用程序。Jmeter旨在涵蓋負(fù)載、功能、壓力等類型的測試。它需要JDK 5或更高版本才能運(yùn)行。
Stress Tester
該工具提供了對web應(yīng)用程序性能的廣泛分析,以圖形格式提供結(jié)果,并且非常易于使用。不需要高級(jí)腳本,并提供良好的投資回報(bào)。
Neo load
這是市場上用于測試web和移動(dòng)應(yīng)用程序的流行工具。該工具可以模擬數(shù)千個(gè)用戶,以評(píng)估負(fù)載下的應(yīng)用程序性能并分析響應(yīng)時(shí)間。它還支持云集成的性能、負(fù)載和壓力測試。它易于使用,具有成本效益,并提供良好的可伸縮性。
壓力測試的度量
度量有助于評(píng)估系統(tǒng)的性能,通常在壓力測試結(jié)束時(shí)進(jìn)行研究。常用的度量標(biāo)準(zhǔn)是-
測量可伸縮性和性能
每秒頁面數(shù):衡量每秒請求的頁面數(shù)
吞吐量:基本度量-響應(yīng)數(shù)據(jù)大小/秒
輪數(shù):計(jì)劃測試場景的次數(shù)與客戶端執(zhí)行的次數(shù)之比
應(yīng)用程序響應(yīng)
檢索時(shí)間:檢索圖像或頁面的平均時(shí)間
第一個(gè)字節(jié)的時(shí)間:返回?cái)?shù)據(jù)或信息的第一個(gè)字節(jié)所花費(fèi)的時(shí)間
Page Time:檢索頁面中所有信息所花費(fèi)的時(shí)間
失敗
失敗連接數(shù):客戶端拒絕的失敗連接數(shù)(弱信號(hào))
失敗回合數(shù):失敗回合數(shù)
失敗點(diǎn)擊:系統(tǒng)失敗嘗試的次數(shù)(斷開的鏈接或看不到的圖像)
結(jié)論
壓力測試的目的是在極端條件下檢查系統(tǒng)。它監(jiān)視系統(tǒng)資源,如內(nèi)存、處理器、網(wǎng)絡(luò)等,并檢查系統(tǒng)恢復(fù)到正常狀態(tài)的能力。它檢查系統(tǒng)在壓力下是否顯示適當(dāng)?shù)腻e(cuò)誤消息。
壓力測試的例子
電子商務(wù)網(wǎng)站宣布節(jié)日促銷
新聞網(wǎng)站在一些重大事件的時(shí)候
教育委員會(huì)的結(jié)果網(wǎng)站
社交網(wǎng)站或博客、應(yīng)用程序等
最后: 下方這份完整的軟件測試視頻學(xué)習(xí)教程已經(jīng)整理上傳完成,朋友們?nèi)绻枰梢宰孕忻赓M(fèi)領(lǐng)取【保證100%免費(fèi)】文章來源:http://www.zghlxwxcb.cn/news/detail-456647.html

這些資料,對于【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個(gè)倉庫也陪伴上萬個(gè)測試工程師們走過最艱難的路程,希望也能幫助到你!文章來源地址http://www.zghlxwxcb.cn/news/detail-456647.html

到了這里,關(guān)于軟件測試中的壓力測試是什么?的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!