了解需求:
1季二、性能測(cè)試過程中猜煮,我們經(jīng)常需要對(duì)流程化的業(yè)務(wù)進(jìn)行性能測(cè)試拗胜,其中涉及到很多接口灵汪,這時(shí)候問開發(fā)拿接口和參數(shù)就會(huì)降低工作效率檀训,直接用jmeter的錄制功能就能提高工作效率
2柑潦、開發(fā)接口案例中,我們也經(jīng)常會(huì)碰到一些上傳肢扯、下載妒茬、導(dǎo)入等等一些接口功能,這些腳本如果直接問開發(fā)拿接口和參數(shù)也不方便蔚晨,直接錄制效率也會(huì)更高
3乍钻、百度網(wǎng)盤共享了一份錄制模版,常用的測(cè)試元件都已經(jīng)添加铭腕,排除模式也添加了常見的不需要的請(qǐng)求银择,錄制模板下載方式見文章末尾介紹
一、配置瀏覽器代理
1. 打開IE瀏覽器累舷,然后點(diǎn)擊工具》Internet選項(xiàng)》
2. 點(diǎn)擊連接頁簽浩考,在點(diǎn)擊局域網(wǎng)設(shè)置按鈕
3. 在代理服務(wù)器一欄勾選為L(zhǎng)AN使用代理服務(wù)器,輸入地址:localhost 被盈,端口你要設(shè)置的代理端口析孽,本文設(shè)置為8888,然后點(diǎn)擊確定按鈕
二只怎、開始錄制腳本
1. 首先我們配置下界面語言袜瞬,默認(rèn)為英文,修改下jmeter的bin目錄下的jmeter.properties文件37行#language=en 改成language=zh_CN身堡,則每次打開jmeter都顯示為中文界面邓尤,如下
2. 錄制過程中,可能錄制的請(qǐng)求參數(shù)會(huì)顯示亂碼贴谎,也需要在jmeter.properties文件添加sampleresult.default.encoding=UTF-8 汞扎,如下圖所示
3. 雙擊運(yùn)行bin目錄下的jmeter.bat文件打開jmeter,首先需要在測(cè)試計(jì)劃右鍵點(diǎn)擊測(cè)試計(jì)劃》添加》非測(cè)試元件》HTTP代理服務(wù)器
4. 端口中輸入ie中配置的端口擅这,分組選擇put each group in a new transaction controller(在每個(gè)新組創(chuàng)建一個(gè)新的事務(wù)控制器澈魄,便于區(qū)分錄制的請(qǐng)求功能)
5. 右鍵點(diǎn)擊測(cè)試計(jì)劃》添加》Threads》線程組,添加線程組
6. 右鍵點(diǎn)擊線程組》添加》邏輯控制器》錄制控制器仲翎,添加錄制控制器
7. 然后點(diǎn)擊HTTP代理服務(wù)器痹扇,點(diǎn)擊啟動(dòng)按鈕,開啟錄制功能谭确,此時(shí)你打開瀏覽器帘营,登陸你要測(cè)試的系統(tǒng)票渠,進(jìn)行的操作都會(huì)被錄制下
8. 腳本錄制如下逐哈,刪除掉不要的腳本,然后進(jìn)行調(diào)試
9. 錄制過程中问顷,可能出現(xiàn)界面提示"您的連接不是私密連接"昂秃,實(shí)際是需要更新jmeter的crt證書
10. 打開IE瀏覽器禀梳,點(diǎn)擊工具》Internet選項(xiàng)》內(nèi)容》證書》受信任的根證書頒發(fā)機(jī)構(gòu)》導(dǎo)入》下一步
11. 點(diǎn)擊瀏覽按鈕,選擇bin目錄下的crt證書肠骆,然點(diǎn)擊下一步算途,一直點(diǎn)擊下一步,直到點(diǎn)擊完成
12. 此時(shí)蚀腿,重新打開報(bào)錯(cuò)的百度頁面嘴瓤,正常顯示,錄制成功
三莉钙、配置錄制腳本排除和包含模式
實(shí)際錄制腳本過程中廓脆,可能會(huì)錄制到很多不需要的網(wǎng)站請(qǐng)求,或者一些不需要的js磁玉、css之類的請(qǐng)求停忿,這時(shí)我們就可以通過排除和包含模式進(jìn)行過濾請(qǐng)求,這樣錄制的腳本就會(huì)更加簡(jiǎn)潔蚊伞,提高開發(fā)案例效率
設(shè)置排除模式的正則表達(dá)式:
1. 排除.js結(jié)尾類型的請(qǐng)求
.*\.js
2. 如果需要排除更多類型,使用正則語法席赂,添加即可,如下所示时迫,
(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2|do|query)
(?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|eot|otf|ttf|mp4|woff|woff2|do|query)[\?;].*
?
3. 有時(shí)候錄制的腳本需要排除比如mongodb結(jié)尾的請(qǐng)求颅停,如下圖
4. 正則表達(dá)式需要另起一行,如下所示别垮,表示接口地址以mongodb結(jié)尾的都排除
.*mongodb
設(shè)置包含模式的正則表達(dá)式:
1. 只錄制www.baidu.com域名的請(qǐng)求
.*www\.baidu\.com.*
2. 如果需要錄制多個(gè)域名的請(qǐng)求便监,只要用正則|連接即可,如下所示
.*www\.baidu\.com.*|.*www\.google\.com.*
?
3. 這樣錄制的請(qǐng)求就只有谷歌和百度的請(qǐng)求碳想,其它網(wǎng)站的請(qǐng)求都會(huì)被過濾掉
1. 添加debug sample用來調(diào)試,右鍵點(diǎn)擊線程組》添加>Sample》Debug Sample
2. 添加查看結(jié)構(gòu)樹胧奔,右鍵點(diǎn)擊線程組》監(jiān)聽器》察看結(jié)果樹
3. 點(diǎn)擊啟動(dòng)按鈕逊移,就可以在察看結(jié)果樹中看到調(diào)取的變量是否成功
五、本章介紹如何錄制ios端的app請(qǐng)求
1. 目前app端接觸過的接口都是走h(yuǎn)ttps龙填,所以需要安裝證書胳泉,也就是jmeter的bin目錄的ApacheJMeterTemporaryRootCA.crt,可以把該證書發(fā)送到手機(jī)岩遗,然后安裝
2. 如下所示扇商,本人親測(cè)發(fā)送到QQ手機(jī)端,然后使用QQ瀏覽器打開宿礁,就可以安裝成功
3. 安裝完成之后案铺,需要在設(shè)置》通用》關(guān)于本機(jī)》證書信任設(shè)置,把_DO NOT INSTALL unless this is your certificate開啟
4. 進(jìn)入設(shè)置》通用》描述文件與設(shè)備管理梆靖,查看_DO NOT INSTALL unless this is your certificate是否顯示已驗(yàn)證控汉,如果已驗(yàn)證笔诵,就可以進(jìn)行錄制請(qǐng)求了
5. 在手機(jī)已經(jīng)連接wifi(連接的wifi網(wǎng)絡(luò)需要和電腦的網(wǎng)絡(luò)一致)的情況下設(shè)置wifi代理,點(diǎn)擊手動(dòng)輸入電腦ip姑子,端口和jmeter的HTTP代理端口保持一致乎婿,如下所示
6.啟動(dòng)錄制按鈕,對(duì)app端進(jìn)行操作街佑,就可以成功錄制請(qǐng)求
如果文章對(duì)你有幫助谢翎,歡迎關(guān)注本人公眾號(hào),公眾號(hào)與本平臺(tái)文章同步沐旨,方便大家查閱岳服,本人會(huì)持續(xù)推出與測(cè)試有關(guān)的文章,與大家分享測(cè)試技術(shù)希俩,每一篇原創(chuàng)文章都是用心編寫吊宋,杜絕抄襲復(fù)制
QQ技術(shù)交流群:加群請(qǐng)輸入驗(yàn)證信息 簡(jiǎn)書
??????????????
微信二維碼關(guān)注公眾號(hào):
關(guān)注之后,回復(fù)資源下載颜武,即可獲取本人共享的各種資源下載地址