Test Plan的配置元件中有一些和HTTP屬性相關的元件:HTTP Cache Manager、HTTP Authorization Manager、HTTP Cookie Manager、HTTP ader Manager、HTTP Request Defaults等,這些元件有什麼做用呢?緣由是jmeter不是瀏覽器,所以其行爲並不和瀏覽器徹底一致,這些jmeter提供的HTTP屬性管理器用於可能模擬瀏覽器的行爲,在HTTP協議層上定製發送給被測應用的HTTP請求。windows
(1)HTTP Request Default(http請求默認值)
該屬性管理器用於設置器做用範圍內的全部HTTP請求默認值,可被設置的內容包括HTTP請求的host,端口,協議等,一個Test Plan中能夠有多個HTTP Request Defaults,處於多個HTTP Request Default做用域內的sampler使用HTTP Request Default中設置值的疊加值瀏覽器
(2)HTTP Authentication Manager
該屬性管理器用於設置自動對一些須要NTLM驗證(NTLM是windows NT早期版本的標準安全協議)的頁面進行驗證和登陸緩存
(3)HTTP Cache Manger(HTTP緩存管理)
該屬性管理器用於模擬瀏覽器的Cache行爲,爲TestPlan增長該屬性管理器後,TestPlan運行過程當中會用Last-Modified 、ETag和Expired等決定是否從Cache中獲取相應的元素安全
注意:若是TestPlan中的某個Sampler請求的元素是被cache的元素,則TestPlan在運行過程當中會直接從Cache中讀取該元素,這樣sampler獲得的返回值就會是空,在這種狀況下,若是爲該Sampler設置了Assertion檢查響應體中制定內容是否存在,該Assertion就會失敗服務器
(4)HTTP CookieManager(HTTP Cookie管理器)
該屬性管理用於管理TestPlan運行時的全部cookie。(存儲在用戶本地終端上的數據)HTTP cookie Manager 能夠自動存儲服務器發送給客戶端的全部Cookie,並在發送請求時附件上適合的Cookie。同時,用戶也能夠在HTTP Cookie Manager中手工添加一些Cookie,這些被手工添加的Cookie會在發送請求時被自動附加到請求cookie
注意:jmeter的http cookie manager會爲Thread Group中的每一個線程設置一個單獨的會話區域來管理該線程的全部cookie,也就是說,每一個線程的會話cookie是徹底獨立的(與瀏覽器行爲一致),可是用戶在http Cooike manager中手工添加的cookie則被全部線程共享
若是選中clear cookies each iteration? 此項,意味着線程在每次迭代是清除本身會話中的全部cookie線程
(5)HTTP header Manager(HTTP 頭文件管理器)3d
該屬性管理器用於定製Sampler發出的http請求的請求頭文件的內容,不一樣的瀏覽器發出的http請求具備不一樣的Agent,訪問某些有防盜鏈的頁面時須要正確的Refer,,,這些狀況下都須要經過http header manager來保證發送的http請求時正確的blog