1. 程式人生 > >四:建立高級web測試計劃

四:建立高級web測試計劃

cookie 手動 建立 fine support 技術分享 瀏覽器 fix agent

發送帶有Header的請求

參考:http://jmeter.apache.org/usermanual/build-adv-web-test-plan.html#header_manager

Jmeter裏面管理發送的請求的header使用 HTTP Header Manager。使用它可以添加或重寫各種header屬性,比如"User-Agent", "Pragma", "Referer"等等。

添加HTTP Header Manager方法: Add –> Config Element –> HTTP Header Manager

可以直接放到Thread Group,這樣就作用於線程組裏面的所有請求。也可以放到某個請求下,這樣就只作用於當前請求。

技術分享

添加之後運行測試計劃,可以看到發送的請求有兩個Connection,一個是系統自動添加的,一個就是通過HTTP Header Manager添加的請求header。

技術分享

發送帶有cookie的請求

參考:http://jmeter.apache.org/usermanual/build-web-test-plan.html#adding_cookie_support

管理cookie使用 Cookie Manager 。

Cookie Manager element會像瀏覽器一樣自動存儲和發送cookie。如果 HTTP 請求的Response中包含cookie,Cookie Manager 會自動儲存cookie並且在未來對該網站的訪問中使用這些cookie的值。每個用戶有自己獨立的cookie存儲區,所以不會互相幹擾。這種自動存儲的 cookie 在 Cookie Manager 中看不到,但是可以在 View Result Tree中看到。

cookie值也可以被存儲到jmeter線程變量中。如果想保存cookie為變量,需要在jmeter.properties中定義屬性“CookieManager.save.cookies=true”。這樣假設一個cookie的名字是TEST,我們就可以使用${COOKIE_TEST}來引用它,jmeter默認會在cookie變量前面加一個前綴COOKIE,也可以使用屬性 "CookieManager.name.prefix= "來自定義前綴。

技術分享

如果想手動添加一些cookie,可以直接在User-Defined-Cookies裏面添加。這樣這些cookie會被所有線程共享使用。

添加cookie之後,執行,然後就可以在 View Results Tree的request中看到發送的cookie。

技術分享

需要註意的是,Jmeter不提倡使用多個Cookie Manager 。如果使用多個Cookie Manager 的話,jmeter無法確定哪一個會被使用。

四:建立高級web測試計劃