Python處理session的方法整理
阿新 • • 發佈:2020-01-09
前言:
不管是在做介面自動化還是在做UI自動化,測試人員遇到的第一個問題都是卡在登入上。
那是因為在執行登入的時候,服務端會有一種叫做session的會話機制。
一個很簡單的例子:
在做功能測試的時候,肯定會遇到一種測試場景,需要在沒登入的時候進行一些普通操作,會提示“請先登入”
比如:我們在逛TB的時候,如果沒有登入,那麼當你搜索到一個商品,準備下單時候,是不是就會彈出一個登入框?
其實這就是利用到了session會話機制。
因為HTTP協議是無狀態的,那麼在下訂單,加入購物車等場景時,伺服器是不知道哪個使用者在操作。
因此,伺服器需要為特定使用者建立特定會話,該會話用於識別使用者並跟蹤使用者,以便知道下一個什麼商品的訂單,購物車裡有些什麼商品。
requests.session
python有一個非常強大的介面測試第三方庫 -- requests
很多學習Python的同學們可能都知道requests庫的用法,但是不知道的是還有另外一種用法:requests.session
session其實是一個會話類,requests的所有請求方法,底層都是呼叫的這個類的物件。
其他方法和session的區別在於:
直接使用requests呼叫請求方法傳送請求,每次都會建立一個新的session(會話物件),所有沒有之前請求的cookies資訊
直接建立一個session物件來發請求,那麼每次發請求用的都是這個會話物件,所有能夠儲存之前的會話資訊(cookies資料)
程式碼如下:session類
requests庫
以上就是Python處理session最簡單的方法的全部內容,感謝大家對我們的支援。