性能測試的目的:發(fā)現(xiàn)性能瓶頸
性能測試的分類
概念:
性能測試是個(gè)非常廣泛的概念,包括的很多方面的測試仿滔,也可稱為只為非功能測試惠毁。
自動(dòng)化測試屬于功能測試的范圍,由于其測試方法要求測試人員擁有一定的代碼能力堤撵,所以被單獨(dú)分成一個(gè)測試模塊仁讨。
具體分類(測試范圍)
負(fù)載測試:通過逐步加壓的方法,達(dá)到既定的性能閾值的目標(biāo)实昨,閾值的設(shè)定應(yīng)是小于等于某個(gè)值洞豁,如CPU使用率小于等于80%
壓力測試:通過逐步加壓的方法,使得系統(tǒng)的某些資源達(dá)到飽和,甚至失效的狀態(tài)丈挟,劍膽粗暴的解釋就是什么條件能把系統(tǒng)壓崩潰刁卜。
并發(fā)測試:在同一時(shí)間內(nèi),多個(gè)虛擬用戶同時(shí)訪問同一模塊曙咽、同一功能蛔趴,通常的測試方法是設(shè)置集合點(diǎn)。
容量測試:通常是指數(shù)據(jù)庫層面的例朱,目標(biāo)是獲取數(shù)據(jù)庫的最佳容量的能力孝情。又稱為容量預(yù)估。具體測試方法為在一定的并發(fā)用戶洒嗤,不同的基礎(chǔ)數(shù)據(jù)量下箫荡,觀察數(shù)據(jù)庫的處理能力,即獲取數(shù)據(jù)庫的各項(xiàng)性能指標(biāo)渔隶。(一般是做完前面兩個(gè)再做這個(gè))
可靠性測試:又稱為穩(wěn)定性測試或者疲勞測試羔挡。是指系統(tǒng)在高壓情況下,長時(shí)間的運(yùn)行系統(tǒng)是否穩(wěn)定间唉。如CPU使用率在80%以上绞灼,7*24小時(shí)運(yùn)行,系統(tǒng)是否穩(wěn)定呈野。
異常測試:又稱為失敗測試低矮。是指系統(tǒng)架構(gòu)方面的測試。如在負(fù)載均衡架構(gòu)中被冒,要測試lei機(jī)商佛,節(jié)點(diǎn)掛掉的情況系統(tǒng)的反映。
性能測試的工作流程
1姆打、需求分析
2良姆、性能指標(biāo)制定(吞吐量,QPS等等)
3幔戏、腳本開發(fā)(或者工具)
4玛追、場景設(shè)置
5、監(jiān)控部署
6闲延、測試執(zhí)行
7痊剖、性能分析
8、性能調(diào)優(yōu)
9垒玲、測試報(bào)告
圖示如下:
常見系統(tǒng)應(yīng)用分層架構(gòu):
顯示層(View)——web陆馁、Android、IOS合愈、H5
邏輯控制層(controller)——Api
數(shù)據(jù)存儲層(model)——mysql(支持事務(wù))叮贩、mongodb(不支持事務(wù))击狮、redis(存放在內(nèi)存中)...