Jmeter4.0----HTTP Cookie管理器(8)


1.說明

在腳本編寫的過程中,我們常常會遇到用戶登錄之后的相關操作,但是又不想去通過腳本先模擬用戶登錄,再使用cookie值保持登錄,做后續的操作的情況下,我們就會用到HTTP Cookie管理。

HTTP Cookie管理,主要是通過其他途徑獲取有效的用戶登錄后生成的cookie,放入HTTP Cookie管理中,在后續接口的操作中,請求會自動帶上有效的cookie信息,讓服務器認為,接口現在的操作是已登錄有效用戶,從而保證我們接口的正常運行及返回。

 

首先,帶大家看一下沒有cookie值的腳本返回(此時未添加HTTP Cookie管理)

ps:我這個接口,是想模擬用戶登錄之后獲取一個頁面中部分信息,但是用戶登錄,每次需要輸入驗證碼,驗證碼又不確定,我就覺得很麻煩,暫時不想做登錄處理,想跳過登錄,直接做用戶登錄之后的操作,但是呢,腳本寫好之后,悲慘的發現,用戶沒登錄,啥都不能做,嗯~~~就像淘寶,你想下單必須先登錄,我這里也是一樣的,就是給我返回,登錄頁面,唉~~~所以,我們看接下來的操作步驟吧!

  

 

 

2.步驟

第一步:在瀏覽器中獲取已登錄用戶的cookie值

 在瀏覽器中打開你要操作的網站---->登錄一個有效用戶---->F12(打開開發者工具)

Application中獲取自己操作的網站的cookies相關信息

 

 

 

第二步:添加HTTP Cookie管理器

 線程組 (鼠標右鍵)---->配置元件---->HTTP Cookie管理器

 

(1)每次反復清除Cookies?:選擇后,則每次線程組運行時,都會清除 cookie。(若是手動添加的cookie,則不會被清除)

(2)Implementation履行的協議。

(3)Cookie PolicyCookie的管理策略

  • compatibility:推薦選擇此種策略。這種兼容性設計要求是適應盡可能多的不同的服務器,盡管不是完全按照標准來實現的。如果你遇到了解析 Cookies 的問題,你就可能要用到這一個規范。有太多的web站點是用CGI腳本去實現的,而導致只有將所有的 Cookies 都放入 Request header 才可以正常的工作。這種情況下最好設置 http.protocol.single-cookie-header 參數為 true
  • rfc2109:是HttpClient使用的默認Cookies協議。
  • rfc2965:定義了版本2並且嘗試去彌補在版本1Cookie RFC2109 標准的缺點。規定 RFC2965 最終取代 RFC2109 發送 RFC2965 標准 Cookies 的服務端,將會使用 Set-Cookie2 header 添加到 Set-Cookie Header 信心中,RFC2965 Cookies 是區分端口的。
  • ignorecookies:此規格忽略所有 Cookie。被用來防止 HttpClient 接受和發送的 Cookie
  • netscape:是最原始的 Cookies 規范,同時也是 RFC2109 的基礎。盡管如此,還是在很多重要的方面與 RFC2109 不同,可能需要特定服務器才可以兼容。
  • default:默認

 

第三步:運行接口

HTTP Cookie管理器添加配置成功之后,再運行我們的接口,就發現不再是返回登錄頁面,而是有正確的返回信息啦~~

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM