JMeter測(cè)試工程原生性能壓測(cè)
方案概述
應(yīng)用場景
用戶在使用本地JMeter進(jìn)行壓測(cè)時(shí),為應(yīng)對(duì)不同的壓測(cè)需求,需要安裝各種插件。為了方便查看可視化的測(cè)試報(bào)告,可以在PerfTest中引入JMeter測(cè)試工程。PerfTest-JMeter測(cè)試工程旨在為用戶提供JMeter原生引擎的支持,用戶可在PerfTest-JMeter測(cè)試工程里導(dǎo)入JMeter腳本,使用JMeter原生引擎快速發(fā)起高并發(fā)的性能測(cè)試,且可查看完備的性能測(cè)試報(bào)告。
方案架構(gòu)
PerfTest-JMeter測(cè)試工程,通過集成開源Apache-JMeter實(shí)現(xiàn)壓力測(cè)試,具體工作原理如下:
1、用戶通過PerfTest測(cè)試資源,將自己租戶下的CCE節(jié)點(diǎn),納管到PerfTest服務(wù),作為調(diào)試節(jié)點(diǎn)(一個(gè))和執(zhí)行節(jié)點(diǎn)(至少一個(gè)才能發(fā)起任務(wù))使用。納管后,PerfTest服務(wù)會(huì)創(chuàng)建一個(gè)VPC終端節(jié)點(diǎn),用于上傳測(cè)試數(shù)據(jù)到PerfTest服務(wù)。PerfTest服務(wù)通過CCE拉起常駐的調(diào)試負(fù)載,負(fù)載拉起一個(gè)容器(即PerfTest容器),用于調(diào)試。
說明:首次使用PerfTest測(cè)試資源,需要用戶對(duì)PerfTest服務(wù)進(jìn)行授權(quán),允許PerfTest服務(wù)操作CCE和VPC終端節(jié)點(diǎn)。
2、用戶使用PerfTest-JMeter測(cè)試工程時(shí),需要上傳jmx腳本到PerfTest服務(wù)。這些腳本會(huì)存儲(chǔ)在PerfTest服務(wù)的OBS中。PerfTest服務(wù)拉起容器后,PerfTest容器會(huì)通過OBS下載并執(zhí)行用戶的腳本。
說明:用戶在界面上刪除jmx腳本時(shí),PerfTest服務(wù)的OBS中的腳本也會(huì)被刪除。
3、用戶執(zhí)行任務(wù)時(shí),通過CCE拉起臨時(shí)的執(zhí)行負(fù)載。負(fù)載根據(jù)任務(wù)規(guī)模拉起一個(gè)或多個(gè)PerfTest容器,用于執(zhí)行任務(wù)。當(dāng)采用多個(gè)容器執(zhí)行任務(wù)時(shí),線程組中的線程數(shù)會(huì)平分給每個(gè)PerfTest容器。
4、PerfTest服務(wù)執(zhí)行任務(wù)過程中,PerfTest容器會(huì)通過VPC終端節(jié)點(diǎn)將測(cè)試的結(jié)果數(shù)據(jù)上傳到PerfTest服務(wù),用于:
統(tǒng)計(jì)任務(wù)的并發(fā)數(shù)、時(shí)延、RPS、帶寬、TP90等性能指標(biāo)。
顯示執(zhí)行時(shí)產(chǎn)生的請(qǐng)求日志、返回日志。
5、任務(wù)結(jié)束時(shí),PerfTest容器會(huì)被銷毀,只有執(zhí)行記錄會(huì)留在用戶的執(zhí)行機(jī)中。
說明:PerfTest容器集成了開源Apache-JMeter、PerfTest的控制代碼以及PerfTest的部分JMeter增強(qiáng)能力(如多階段壓力配置、日志輸出等)。
PerfTest-JMeter工程,默認(rèn)集成Apache-JMeter 5.4引擎(當(dāng)前版本),可以通過在PerfTest測(cè)試資源上傳自定義安裝包,更改為Apache-JMeter 5.3或5.2版本。自定義安裝包是從Apache官網(wǎng)下載的zip包。
如果希望PerfTest-JMeter工程能夠支持部分第三方插件,可以在PerfTest-JMeter工程處以“第三方j(luò)ar”的形式,將第三方插件上傳。這等效于將jar包放置在JMeter根目錄“\lib\ext”下。
操作流程
1、編寫本地JMeter腳本,保存為jmx文件。
2、準(zhǔn)備測(cè)試資源,創(chuàng)建私有資源組。
3、創(chuàng)建JMeter測(cè)試工程。
4、導(dǎo)入本地jmx文件。
5、編輯線程組,可根據(jù)業(yè)務(wù)需求設(shè)置線程組的部分參數(shù)。
6、調(diào)試測(cè)試任務(wù),通過調(diào)試快速發(fā)現(xiàn)語法或配置錯(cuò)誤,確保該模型在任務(wù)中可用。
7、執(zhí)行測(cè)試任務(wù),通過測(cè)試獲取并分析系統(tǒng)運(yùn)行的性能數(shù)據(jù)。
8、查看測(cè)試報(bào)告,JMeter測(cè)試報(bào)告提供實(shí)時(shí)、離線兩種類型的測(cè)試報(bào)告,供用戶隨時(shí)查看和分析測(cè)試數(shù)據(jù)。
實(shí)施步驟
前提條件
已在本地安裝JMeter客戶端。
實(shí)施有兩種步驟,第一:本地編寫JMeter腳本,第二:使用JMeter原生壓測(cè),具體步驟參考以下鏈接
性能測(cè)試 CodeArts PerfTest相關(guān)視頻
性能測(cè)試 CodeArts PerfTest精選推薦
1對(duì)1咨詢專屬顧問
華為云咨詢電話:950808或4000-955-988 轉(zhuǎn)1
華為云咨詢電話:950808或4000-955-988 轉(zhuǎn)1