博為峰軟件-APP/Web/小程序/服務(wù)器 性能測試
共 3087字,需瀏覽 7分鐘
·
2020-11-15 03:47
產(chǎn)品亮點(diǎn)
產(chǎn)品說明
博為峰專注測試領(lǐng)域16年,建立標(biāo)準(zhǔn)性能測試流程體系,將測試工作分為:需求階段、準(zhǔn)備階段、執(zhí)行階段、報(bào)告階段、總結(jié)階段5部分,該體系力求簡單、實(shí)用、有效的指導(dǎo)當(dāng)前的性能測試工作活動(dòng)。可以根據(jù)客戶的需求選擇性能測試和監(jiān)控工具,主要包括Loadrunner、Jmeter、Dynatrace、nmon等工具,并提供定制服務(wù),有針對性地開發(fā)一些特定的性能測試腳本和工具。
1. 性能測試的分類
1.1負(fù)載測試?
是指在一定的軟件、硬件及網(wǎng)絡(luò)環(huán)境下,運(yùn)行一種或多種業(yè)務(wù),在不同虛擬用戶數(shù)量的情況下,測試服務(wù)器的性能指標(biāo)是否在用戶的要求范圍內(nèi),以此確定系統(tǒng)所能承載的最大用戶數(shù)、最大有效用戶數(shù)以及不同用戶數(shù)下的系統(tǒng)響應(yīng)時(shí)間及服務(wù)器的資源利用率。
1.2壓力測試?
在一定的軟件、硬件及網(wǎng)絡(luò)環(huán)境下,模擬大量的虛擬用戶向服務(wù)器產(chǎn)生負(fù)載,使服務(wù)器的資源處于極限狀態(tài)下并長時(shí)間持續(xù)運(yùn)行,以測試服務(wù)器在高負(fù)載情況下是否能夠穩(wěn)定工作。?
1.3容量測試?
在一定的軟件、硬件及網(wǎng)絡(luò)環(huán)境下,在數(shù)據(jù)庫中構(gòu)造不同數(shù)量級別的數(shù)據(jù)記錄,運(yùn)行一種或多種業(yè)務(wù)在一定虛擬用戶數(shù)量的情況下,獲取不同數(shù)量級別的服務(wù)器性能指標(biāo),以確定數(shù)據(jù)庫的最佳容量和最大容量。?
1.4配置測試
在不同的軟件、硬件以及網(wǎng)絡(luò)環(huán)境配置下,運(yùn)行一種或多種業(yè)務(wù),在一定的虛擬用戶數(shù)量情況下,獲得不同配置的性能指標(biāo),用于選擇最佳的設(shè)備及參數(shù)配置。
1.5基準(zhǔn)測試?
在一定的軟件、硬件及網(wǎng)絡(luò)環(huán)境下,模擬一定數(shù)量的虛擬用戶運(yùn)行一種或多種業(yè)務(wù),將測試結(jié)果作為基線數(shù)據(jù),在系統(tǒng)調(diào)優(yōu)或系統(tǒng)評測的過程中,通過運(yùn)行相同的業(yè)務(wù)場景比較測試結(jié)果,確定調(diào)優(yōu)結(jié)果是否達(dá)到預(yù)期效果或者為系統(tǒng)的選擇提供決策數(shù)據(jù)。
1.6并發(fā)測試?
通過模擬多個(gè)用戶并發(fā)訪問同一個(gè)應(yīng)用、存儲過程或數(shù)據(jù)記錄以及其他并發(fā)操作,測試是否存在死鎖、數(shù)據(jù)錯(cuò)誤等故障。
1.7驗(yàn)收性能測試?
通過模擬生產(chǎn)運(yùn)行的業(yè)務(wù)壓力量和使用場景組合,測試系統(tǒng)的性能是否滿足生產(chǎn)性能要求。
?
1.8可靠性測試?
通過給系統(tǒng)加載一定的業(yè)務(wù)壓力(例如資源在70%~90%的使用率),讓應(yīng)用持續(xù)運(yùn)行一段時(shí)間,測試系統(tǒng)在這種條件下能否穩(wěn)定運(yùn)行。?
1.9失效恢復(fù)測試?
針對有冗余備份和負(fù)載均衡的系統(tǒng)設(shè)計(jì)的。用來檢驗(yàn)如果系統(tǒng)局部發(fā)生故障,用戶是否能夠繼續(xù)使用系統(tǒng),以及如果這種情況發(fā)生,用戶將受到多大程度的影響
?
2. 性能測試的流程
啟動(dòng)流程
![]()
執(zhí)行流程
![]()
?
3. 性能測試指標(biāo)
3.1 響應(yīng)時(shí)間?
?? ?反映完成某個(gè)業(yè)務(wù)所需要的時(shí)間。?
3.2吞吐量?
?? ?反映單位時(shí)間內(nèi)能夠處理的事務(wù)數(shù)目。?
3.3服務(wù)器資源占用?
?? ?在負(fù)載下系統(tǒng)的資源利用率。
|
指標(biāo)類型 |
指標(biāo) |
說明 |
|
應(yīng)用性能數(shù)據(jù) |
各業(yè)務(wù)的響應(yīng)時(shí)間 |
WEB類型的業(yè)務(wù),參考2/5/8; |
|
每個(gè)場景的最大TPS值(每秒事務(wù)處理數(shù)) |
值越大越好; |
|
|
對應(yīng)最大TPS值的并發(fā)用戶數(shù)、業(yè)務(wù)增長率 |
? |
|
|
系統(tǒng)資源指標(biāo) |
CPU(CPU time、CPU queue) |
CPU time<70%; |
|
內(nèi)存(可用內(nèi)存、cache內(nèi)存) |
可用內(nèi)存>15%; |
|
|
磁盤(每秒讀字節(jié)數(shù)、每秒寫字節(jié)數(shù)、I/O) |
? |
|
|
網(wǎng)絡(luò)帶寬(每秒接收字節(jié)數(shù)、每秒發(fā)送字節(jié)數(shù)) |
? |
|
|
數(shù)據(jù)庫指標(biāo) |
每秒產(chǎn)生的死鎖數(shù) |
值越小越好; |
|
鎖的平均等待時(shí)間 |
值越小越好; |
|
|
高速緩存命中率 |
值越大越好; |
|
|
各SQL語句執(zhí)行時(shí)間 |
值越小越好; |
|
|
連接池內(nèi)存大小 |
參考系統(tǒng)配置; |
|
|
連接池大小 |
參考系統(tǒng)配置; |
|
|
應(yīng)用服務(wù)器指標(biāo) |
當(dāng)前用戶連接數(shù) |
? |
|
當(dāng)前忙的進(jìn)程數(shù) |
? |
|
|
當(dāng)前連接進(jìn)程數(shù) |
? |
|
|
中間件指標(biāo)/JVM |
JVM最大內(nèi)存 |
參考系統(tǒng)配置; |
|
每次GC運(yùn)行后可用內(nèi)存 |
? |
|
|
每次GC運(yùn)行時(shí)間 |
值越小越好; |
?
4. 性能調(diào)優(yōu)
4.1 性能測試調(diào)優(yōu)過程?
確定基準(zhǔn)環(huán)境、基準(zhǔn)負(fù)載和基準(zhǔn)性能指標(biāo)。?
調(diào)整系統(tǒng)運(yùn)行環(huán)境和實(shí)現(xiàn)方法,執(zhí)行測試。?
? ? ? ?硬件環(huán)境的調(diào)整?
? ? ? ?系統(tǒng)設(shè)置的調(diào)整?
? ? ? ?應(yīng)用級別的調(diào)整?
4.2 記錄測試結(jié)果,進(jìn)行分析。?
性能調(diào)優(yōu)應(yīng)該注意的要點(diǎn):
? ? ?1)在應(yīng)用系統(tǒng)的設(shè)計(jì)開發(fā)過程中,應(yīng)始終把性能放在考慮的范圍內(nèi)。
? ? ?2)確定清晰明確的性能目標(biāo)是關(guān)鍵。
? ? ?3)必須保證調(diào)優(yōu)后的程序運(yùn)行正確。
? ? ?4)系統(tǒng)的性能更大程度上取決于良好的設(shè)計(jì),調(diào)優(yōu)技巧只是一個(gè)輔助手段。
? ? ?5)調(diào)優(yōu)過程是迭代漸進(jìn)的過程,每次調(diào)優(yōu)的結(jié)果都要反饋到后續(xù)的代碼開發(fā)中去。
? ? ?6)性能調(diào)優(yōu)不能以犧牲代碼的可讀性和可維護(hù)性為代價(jià)。
產(chǎn)品參數(shù)
| 交付方式 | 服務(wù)類 |
| 依托云產(chǎn)品 | 專有網(wǎng)絡(luò) |
| 質(zhì)保時(shí)間 | 360天 |
| 交付時(shí)間 | 30工作日 |
