python+requests實現介面測試的完整步驟
阿新 • • 發佈:2020-10-28
本文包括requests庫的安裝過程、requests庫的基本語法以及一個例項(攜帶token登入對人員進行註冊)
一、requests安裝
可以通過控制檯輸入命令pip install requests安裝requests,但是我這裡主要介紹pycharm工具中安裝requests
一張圖解釋安裝步驟,簡單快捷
二、requests常用語法
1、基本請求方法,包含引數傳遞
(1)get引數傳遞,示例:
url=“xxxxx” xx={ "xxx":"xx" "xxxxx":1 } r=requests.get(url,params=xx) print(r.text)#解析返回結果並打印出來
(2)post引數傳遞,示例:
url=“xxxxx” xx={ "xxx":"xx" "xxxxx":1 } r=requests.post(url,data=xx) print(r.text)#解析返回結果並打印出來 print(r.json())#josn格式打印出來,適用於返回是json內容
(3)檔案傳輸,示例:
url=“xxxxx” data1={ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx } filexxxx ={ "filexxxxxxxx":open('xxx.jpg','rb')#檔案內容根據實際路徑修改 } r=requests.get(url,data=data1,files=filexxxx) print(r.text)#解析返回結果並打印出來
(4)斷言,示例:
url=“xxxxx” xx={ "xxx":"xx" "xxxxx":1 } r=requests.get(url,params=xx) print(r.text)#解析返回結果並打印出來 assert r.status_code == 200#斷言操作,將響應值與200作對比
(5)獲取token值並傳入需要用到的地方,示例:
url1 = "https://xx.xx/xx/xx/2.1.0/token/sign" r1=requests.post(url1) t = r1.json()["token"]#返回結果是json,只取json()內容裡token值並賦值到t中 #上圖可以看出r1.json()返回的內容還有別的引數
三、例項
import random import requests def test_zhuce(): url = "https://xx.xx/xx/xx/2.0.0/visitor/insert/user/" url1 = "https://xx.xx/xx/xx/2.1.0/token/sign" r1=requests.post(url1) t = r1.json()["token"] b=random.randint(1,100000) date = { "companyId" : "a9a4828204054088bb520df1e1d5b69f","deadLineTime": "2020-10-22T16:00:00.000Z",# "fields": "[{\"fieldName\":\"code\",\"fieldType\":9,\"fieldValue\":\"C:\\Users\\Administrator\\aaaaa.jpg\",\"fieldId\":999}]","groupId": "aab59cf9edb542e7a2e9e6d415ae311b","headPath":"/Z",#照片路徑,我這邊是直接獲取以前上傳過的照片路徑,取伺服器端的值,你可以自己使用檔案上傳的方式上傳你的照片,採用上面的二中的(3)方法 "msToken": t,"name": "介面註冊%d"%b,"propertyId": "f8ff8ea63c3440eb85b81cbccacddef0","registerType":1,"userType": 2 } # header = { # # } # r2=requests.post(url,files=file) # print(r2.json()) r = requests.post(url,data=date) # r=requests.post(url) print('\n'"狀態:",r.text) print('\n'"頭部資訊:",r.headers) print('\n'"cookie資訊:",r.cookies) print('\n'"token資訊:",t) # assert r.status_code == 200
總結
到此這篇關於python+requests實現介面測試的文章就介紹到這了,更多相關python+requests介面測試內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!