更新時(shí)間:2020-12-01 來源:黑馬程序員 瀏覽量:
系統(tǒng)的性能是一個很大的概念,覆蓋面非常廣泛,包括執(zhí)行效率、資源占用、系統(tǒng)穩(wěn)定性、安全性、兼容性、可靠性、可擴(kuò)展性等,性能測試就是描述測試對象與性能相關(guān)的特征并對其進(jìn)行評價(jià)而實(shí)施的一類測試。
性能測試是一個統(tǒng)稱,它其實(shí)包含多種類型,主要有負(fù)載測試、壓力測試、并發(fā)測試、配置測試等,每種測試類型都有其側(cè)重點(diǎn),下面對這幾個主要的性能測試種類分別進(jìn)行介紹。
1.負(fù)載測試
負(fù)載測試是指逐步增加系統(tǒng)負(fù)載,測試系統(tǒng)性能的變化,并最終確定在滿足系統(tǒng)性能指標(biāo)的情況下,系統(tǒng)所能夠承受的最大負(fù)載量。負(fù)載測試類似于舉重運(yùn)動,通過不斷給運(yùn)動員增加重量,確定運(yùn)動員身體狀況保持正常的情況下所能舉起的最大重量。
對于負(fù)載測試來說,前提是滿足性能指標(biāo)要求。例如一個軟件系統(tǒng)的響應(yīng)時(shí)間要求不超過2s,則在這個前提下,不斷增加用戶訪問量,當(dāng)訪問量超過1萬人時(shí),系統(tǒng)的響應(yīng)時(shí)間就會變慢,超過2s,從而可以確定系統(tǒng)響應(yīng)時(shí)間不超過2s的前提下最大負(fù)載量是1萬人。
2.壓力測試
壓力測試也叫強(qiáng)度測試,它是指逐步給系統(tǒng)增加壓力,測試系統(tǒng)的性能變化,使系統(tǒng)某些資源達(dá)到飽和或系統(tǒng)崩潰的邊緣,從而確定系統(tǒng)所能承受的最大壓力。
壓力測試與負(fù)載測試是有區(qū)別的,負(fù)載測試是在保持性能指標(biāo)要求的前提下測試系統(tǒng)能夠承受的最大負(fù)載,而壓力測試則是使系統(tǒng)性能達(dá)到極限的狀態(tài)。例如軟件系統(tǒng)正常的響應(yīng)時(shí)間為2s,負(fù)載測試確定訪問量超過1萬時(shí)響應(yīng)時(shí)間變慢。壓力測試則繼續(xù)增加用戶訪問量觀察系統(tǒng)的性能變化,當(dāng)用戶增加到2萬時(shí)系統(tǒng)響應(yīng)時(shí)間為3s,當(dāng)用戶增加到3萬時(shí)響應(yīng)時(shí)間為4s,當(dāng)用戶增加到4萬時(shí),系統(tǒng)崩潰無法響應(yīng)。由此確定系統(tǒng)能承受的最大訪問量為4萬。
壓力測試可以揭露那些只有在高負(fù)載條件下才會出現(xiàn)的Bug(缺陷),如同步問題、內(nèi)存泄漏等。
3.并發(fā)測試
并發(fā)測試是指通過模擬用戶并發(fā)訪問,測試多用戶并發(fā)訪問同一個應(yīng)用、同一個模塊或者數(shù)據(jù)記錄時(shí)是否存在死鎖或其他性能問題。并發(fā)測試一般沒有標(biāo)準(zhǔn),只是測試并發(fā)時(shí)會不會出現(xiàn)意外情況,幾乎所有的性能測試都會涉及一些并發(fā)測試,例如多個用戶同時(shí)訪問某一條件數(shù)據(jù),多個用戶同時(shí)在更新數(shù)據(jù),那么數(shù)據(jù)庫可能就會出現(xiàn)訪問錯誤、寫人錯誤等異常情況。
4.配置測試
配置測試是指調(diào)整軟件系統(tǒng)的軟硬件環(huán)境,測試各種環(huán)境對系統(tǒng)性能的影響,從而找到系統(tǒng)各項(xiàng)資源的最優(yōu)分配原則。配置測試不改變代碼,只改變軟硬件配置,例如安裝版本更高的數(shù)據(jù)庫、配置性能更好的CPU和內(nèi)存等,通過更改外部配置來提高軟件的性能。
5.可靠性測試
可靠性測試是指給系統(tǒng)加載一定的業(yè)務(wù)壓力,使其持續(xù)運(yùn)行一段時(shí)間(如7×24h),測試系統(tǒng)在這種條件下是否能夠穩(wěn)定運(yùn)行。由于加載有業(yè)務(wù)壓力且運(yùn)行時(shí)間較長,因此可靠性測試通常可以檢測出系統(tǒng)是否有內(nèi)存泄漏等問題。
6.容量測試
容量測試是指在一定的軟硬件及網(wǎng)絡(luò)環(huán)境下,測試系統(tǒng)所能支持的最大用戶數(shù)、最大存儲量等。容量測試通常與數(shù)據(jù)庫、系統(tǒng)資源(如CPU、內(nèi)存、磁盤等)有關(guān),用于規(guī)劃將來需求增長(如用戶增長、業(yè)務(wù)量增加等)時(shí),對數(shù)據(jù)庫和系統(tǒng)資源的優(yōu)化。
猜你喜歡: