【轉】JMeter學習(二十五)HTTP屬性管理員HTTP Cookie Manager、HTTP Request Defaults

來源:互聯網
上載者:User

標籤:不能   屬性   測試   學習   知識   alt   技術   情況   href   

Test Plan的配置元件中有一些和HTTP屬性相關的元件:HTTP Cache Manager、HTTP Authorization Manager、HTTP Cookie Manager、HTTP Header Manager、HTTP Request Defaults等,這些是什麼呢?

JMeter不是瀏覽器,因此其行為並不和瀏覽器完全一致。這些JMeter提供的HTTP屬性管理員用於儘可能類比瀏覽器的行為,在HTTP協議層上定製發送給被測應用的HTTP請求。

(1)HTTP Request Defaults

該屬性管理員用於設定其作用範圍內的所有HTTP的預設值,可被設定的內容包括HTTP請求的host、連接埠、協議等。

一個Test Plan中可以有多個HTTP Request Defaults,處於多個HTTP Request Defaults範圍內的Sampler使用HTTP Request Defaults中設定值的疊加值。

案例

HTTP Request Defaults1:Server Name or IP: www.baidu.com,一個參數:aaa=111

HTTP Request Defaults2:Server Name or IP: www.qq.com,兩個參數:bbb=22,aaa=333

運行結果

總結:

1、一個測試計劃中可以有多個Defaults組件,多個Defaults組件的預設值會疊加,如,雖然兩個Defaults 組件都定義了參數aaa,但發出的請求還是會疊加起來。

2、兩個default中都定義的"Server Name or IP",顯示在發送請求時只能使用一個,這裡使用的是第一個default定義的值www.baidu.com

案例代碼:下載

 

(2)HTTP Authorization Manager

該屬性管理員用於設定自動對一些需要NTLM驗證的頁面進行認證和登入。如:監控tomcat

 

(3)HTTP Cache Manager

該屬性管理員用於類比瀏覽器的Cache行為。為Test Plan增加該屬性管理員後,Test Plan運行過程中會使用Last-Modified、ETag和Expired等決定是否從Cache中擷取相應的元素。

 注意:如果Test Plan中的某個Sampler請求的元素是被Cache的元素,則Test Plan在運行過程中會直接從Cache中讀取該元素,這樣Sampler得到的傳回值就會是空。在這種情況下,如果為該Sampler設定了Assertion檢查響應體中的制定內容是否存在,該Assertion就會失敗。

 

(4)HTTP Cookie Manager

該屬性管理員用於管理Test Plan運行時的所有Cookie。HTTP Cookie Manager可以自動儲存伺服器發送給用戶端的所有Cookie,並在發送請求時附加上合適的Cookie.

同時,使用者也可以在HTTP Cookie Manager中手工添加一些Cookie,這些被手工添加的Cookie會在發送請求時被自動附加到請求。

注意:

    如果在一個測試計劃內有多個Cookie Manager ,Jmeter目前無法指定哪個被使用。所以,一個測試計劃內最好只有一個cookie manager。並且,一個manager裡的 cookie 並不能被其它manager所引用。所以在使用多個Cookie Managers 時要謹慎。  

   同理,上面這個規則同樣適用於config element下面的其它manager:

 

如果選中"Clear cookies each iteration?"此項,意味著線程在每次迭代時清除自己會話中的所有Cookie.

 

(5)HTTP Header Manager

該屬性管理員用於定製Sampler發出的HTTP請求的要求標頭的內容。不同的瀏覽器發出的HTTP請求具有不同的Agent,訪問某些有防盜鏈的頁面時需要正確的Refer...這些情況下都需要通過HTTP Header Manager來保證發送的HTTP請求是正確的。如:

【轉】JMeter學習(二十五)HTTP屬性管理員HTTP Cookie Manager、HTTP Request Defaults

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.