溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Python處理session的方法整理

發(fā)布時(shí)間:2020-09-25 00:42:29 來(lái)源:腳本之家 閱讀:256 作者:亞萌 欄目:開(kāi)發(fā)技術(shù)

前言:

不管是在做接口自動(dòng)化還是在做UI自動(dòng)化,測(cè)試人員遇到的第一個(gè)問(wèn)題都是卡在登錄上。

那是因?yàn)樵趫?zhí)行登錄的時(shí)候,服務(wù)端會(huì)有一種叫做session的會(huì)話(huà)機(jī)制。

一個(gè)很簡(jiǎn)單的例子:

在做功能測(cè)試的時(shí)候,肯定會(huì)遇到一種測(cè)試場(chǎng)景,需要在沒(méi)登錄的時(shí)候進(jìn)行一些普通操作,會(huì)提示“請(qǐng)先登錄”

比如:我們?cè)诠銽B的時(shí)候,如果沒(méi)有登錄,那么當(dāng)你搜索到一個(gè)商品,準(zhǔn)備下單時(shí)候,是不是就會(huì)彈出一個(gè)登錄框?

其實(shí)這就是利用到了session會(huì)話(huà)機(jī)制。

因?yàn)镠TTP協(xié)議是無(wú)狀態(tài)的,那么在下訂單,加入購(gòu)物車(chē)等場(chǎng)景時(shí),服務(wù)器是不知道哪個(gè)用戶(hù)在操作。

因此,服務(wù)器需要為特定用戶(hù)創(chuàng)建特定會(huì)話(huà),該會(huì)話(huà)用于識(shí)別用戶(hù)并跟蹤用戶(hù),以便知道下一個(gè)什么商品的訂單,購(gòu)物車(chē)?yán)镉行┦裁瓷唐贰?/p>

requests.session

python有一個(gè)非常強(qiáng)大的接口測(cè)試第三方庫(kù) -- requests

很多學(xué)習(xí)Python的同學(xué)們可能都知道requests庫(kù)的用法,但是不知道的是還有另外一種用法:requests.session

session其實(shí)是一個(gè)會(huì)話(huà)類(lèi),requests的所有請(qǐng)求方法,底層都是調(diào)用的這個(gè)類(lèi)的對(duì)象。

其他方法和session的區(qū)別在于:

直接使用requests調(diào)用請(qǐng)求方法發(fā)送請(qǐng)求,每次都會(huì)創(chuàng)建一個(gè)新的session(會(huì)話(huà)對(duì)象),所有沒(méi)有之前請(qǐng)求的cookies信息
直接創(chuàng)建一個(gè)session對(duì)象來(lái)發(fā)請(qǐng)求,那么每次發(fā)請(qǐng)求用的都是這個(gè)會(huì)話(huà)對(duì)象,所有能夠保存之前的會(huì)話(huà)信息(cookies數(shù)據(jù))

代碼如下:session類(lèi)

Python處理session的方法整理

requests庫(kù)

Python處理session的方法整理

 

以上就是Python處理session最簡(jiǎn)單的方法的全部?jī)?nèi)容,感謝大家對(duì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI