python介面測試 自動儲存cookies

2021-09-29 22:01:02 字數 1660 閱讀 3313

介面測試中遇到上乙個請求返回響應包含cookie(如下圖登入請求的響應結果)。需將cookies儲存下來,後續請求自動帶入,否則會提示未登入

python requests的cookie型別是

檢視cookie型別的方式:

在很多時候,傳送請求後,服務端會對傳送請求方進行身份識別,如果請求中缺少識別資訊或存在錯誤的識別資訊,

會造成識別失敗。 如一些需要使用者登入以後才能訪問的頁面。

import requests

myaddress_url=''

myaddress=requests.get(myaddress_url)

print(myaddress.status_code)

print(myaddress.text)

-----結果-----

401未授權的訪問, 請重新登陸

在使用者登入的時候,伺服器端會向請求方傳送一些資料,存在本地,例如cookies,在接下來的某些請求中,都需要帶上cookies,伺服器通過cookies內容來辨別使用者。

那麼在python中,是如何在請求中帶入cookies資訊的呢,看下面:

import requests

login_url=''

userinfo=

login=requests.post(login_url,json=userinfo)

cookies=login.cookies    

#獲取登入後的cookies內容

myaddress=requests.get(myaddress_url,cookies=cookies)    #在請求中帶入cookies

print(myaddress.status_code)

print(myaddress.text)

-----結果-----

200

帶入了cookies內容後,可以正常的獲取到想要的響應內容。

在此處雖然可以請求成功,但需要獲取到cookies內容及每次都要傳送cookies內容,不是非常方便,因此,接下來我們介紹另外一種方法

使用session類來傳送請求:

test_session=requests.session()                           #使用session類生成乙個物件

login=test_session.post(login_url,json=userinfo)  

myaddress=test_session.get(myaddress_url)

print(myaddress.status_code)

print(myaddress.text)

-----結果-----

200

python介面自動化測試

為了監控線上的介面是否正常執行,所以想寫乙個smoke test.這個檔案希望能夠實現從檔案讀取url和引數,然後傳送請求,校驗返回code 200的功能。1.首先採取哪種方式存放url和請求引數 excel?csv?ini?用csv比較好,相容性也比較好 那我們使用csv吧。todo 考慮放在資料...

python介面自動化測試

介面自動化測試之連線資料庫 安裝環境 window7 python3.7 資料庫mysql 遠端連線 步驟內容 1.連線資料庫 2.建立游標 3.sql語句 4.獲取元組資訊 連線資料庫 查詢出來的資料都是以元組的形式返回的 sql select from t user where id 5 查詢多...

python介面自動化 單介面測試

介面測試之前要先知道乙個單元測試模組,那就是unittest,這個模組由5部分組成 testcase 寫用例的,所有用例都寫在這裡邊 testsuite 測試套件,收集用例 testloader 載入用例 testrunner 執行用例 testfixture 測試準備和善後工作,分為setup和t...