前言
有時候,為了得到更詳細的請求結果,我們可能需要使用Fiddler結合Jmeter來抓包分析,從而更好的輔助測試。
遇到的問題
這里以一個獲取學生信息的接口為例進行說明。
當我在Jmeter里按接口文檔正確設置好請求,打開Fiddler之后,發現無法抓到Jmeter的請求。
從圖片可以看到,Fiddler並沒有抓到Jmeter發送的請求。
問題分析
簡單分析一下,Fiddler在使用過程中是以代理Web服務器的形式進行的,代理地址為127.0.0.1,端口為8888,它在運行時會監聽8888端口的HTTP代理。
因此,當我們在Jmeter的當前請求中,設置代理地址和端口與Fiddler保持一致時,Fiddler就應該能夠抓取到Jmeter發送的請求數據。
Jmeter請求中設置代理
目前我們有2個HTTP請求,我們先只設置1個。
設置完成后,再次執行測試計划。
可以看到,Fiddler抓取到了第一個請求,而第二個請求,因未設置代理,故沒抓到數據。
設置HTTP請求默認值
如果我們有很多的請求時,我們總不可能在每一個請求中都設置代理吧,因此,我們最好設置一個HTTP請求默認值。
我們只需在HTTP請求默認值中設置代理服務器,那么后面的請求都會默認使用HTTP請求默認值設置的值,這樣我們的請求就都能夠被Fiddler抓取到。
注意:當關閉Fiddler時,我們需在Jmeter中禁用HTTP請求默認值,以取消當前設置的代理,否則Jmeter可能無法正常請求。