避坑指南!一文幫您解決Jmeter錄制Chrome操作過程中遇到的問題!
Jmeter錄制腳本原理
腳本錄制時,Jmeter作為代理網(wǎng)關(guān),通過監(jiān)聽某個端口,來捕獲監(jiān)聽端口的報(bào)文信息,對抓取到的請求信息和響應(yīng)信息進(jìn)行轉(zhuǎn)換為對應(yīng)的行為函數(shù)。我們這里以設(shè)置chrome代理為例,然后使用jmeter進(jìn)行腳本錄制工作,chrome代理的配置設(shè)置如下:
添加HTTP 代理服務(wù)器和錄制控制器
打開Jmeter(版本是5.4.1),測試計(jì)劃 右鍵>非測試元件>HTTP 代理服務(wù)器。
線程組 右鍵>邏輯控制器>錄制控制器。
如下圖:
我們在HTTP代理服務(wù)器中進(jìn)行錄制瀏覽器行為的相關(guān)工作,如下圖:
點(diǎn)擊上圖中的啟動按鈕,會彈出如下對話框,告訴我們需要導(dǎo)入Jmeter的CA證書(原因是錄制https網(wǎng)站的請求需要CA證書),Jmeter會在bin目錄下為我們自動生成一個臨時CA證書,但是這個證書的有效期只有七天!
備注:下面這三個文件如果過期,在bin目錄下刪除即可,重新進(jìn)行錄制后,又會自動生成。
ApacheJMeterTemporaryRootCA.crt
ApacheJMeterTemporaryRootCA.usr
proxyserver.jks
點(diǎn)擊后,就可以進(jìn)行錄制了,在瀏覽器中輸入百度,但是遺憾的是,同學(xué)們大概率會出現(xiàn)下面的錯誤頁面!
如何解決呢?我們需要在chrome中導(dǎo)入jmeter的 ca證書。
在chrome中導(dǎo)入Jmeter生成的臨時CA證書
在chrome中的設(shè)置中,選擇隱私和安全>安全>管理設(shè)備證書。
一定選擇下圖中的受信任的根證書頒發(fā)機(jī)構(gòu)。
一定選擇下圖中的受信任的根證書頒發(fā)機(jī)構(gòu)。
一定選擇下圖中的受信任的根證書頒發(fā)機(jī)構(gòu)。
重要的話說三篇,默認(rèn)是第一個“個人”tab,在這個tab中導(dǎo)入證書,后期錄制時是無法成功的,此處浪費(fèi)我大量的時間!
點(diǎn)擊導(dǎo)入,選擇\bin \ApacheJMeterTemporaryRootCA.crt即可,如下圖:
接下來默認(rèn)操作導(dǎo)入crt文件就完成了chrome 導(dǎo)入jmeter臨時CA證書的操作。
Jmeter錄制操作
回到Jmeter,重新在HTTP 代理服務(wù)器中使用錄制功能,就可以正常工作了,我們可以設(shè)置錄制的Transaction name,如下圖,同樣,點(diǎn)擊下圖中的停止按鈕就會停止錄制。
接下來在瀏覽器中簡單操作一下百度就會看到錄制的腳本被保存在錄制控制器中,如下圖所示:
好了,大功告成,錄制成功!我的每一篇文章都希望幫助讀者解決實(shí)際工作中遇到的問題!