Python接口测试之requests
生活随笔
收集整理的這篇文章主要介紹了
Python接口测试之requests
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.簡介
requests是一個很實用的Python HTTP客戶端庫,編寫爬蟲和測試服務器響應數據時 經常會用到,Requests是Python語言的第三方的庫,專門用于發送HTTP請求2.前提
要下載requests
pip install requests3.Get請求
1.無參數請求
r=requests.get('http://www.baidu.com')2.有參數請求
payload = {'key1': 'value1', 'key2': 'value2', 'key3': None} r = requests.get('http://www.baidu.com ', params=payload)案例:
import requests class UseRequest():# get傳參的第一種方式def GetMethod(self):r=requests.get("http://v.juhe.cn/toutiao/index?type=guonei&key=4b72107""de3a197b3bafd9adacf685790")print(r.text)# get傳參的第二種方式def GetMethod1(self):params = {"type": "guonei", "key": "4b72107de3a197b3bafd9adacf685790"}r = requests.get("http://v.juhe.cn/toutiao/index", params=params)print(r)u=UseRequest() u.GetMethod() u.GetMethod1()4.Post請求
類似python中的表單提交
payload = {'key1': 'value1', 'key2': 'value2'}r = requests.post("http://httpbin.org/post", data=payload)案例:
import requests class UseRequest():# post傳參的方式def PostMethod(self):params = {"type": "guonei", "key": "4b72107de3a197b3bafd9adacf685790"}r = requests.post("http://v.juhe.cn/toutiao/index", data=params)print(r.status_code)# return r.status_codeu=UseRequest() u.PostMethod()5.requests響應
print(r.status_code) # 響應狀態碼 print(r.headers) # 響應頭 print(r.cookies) # 響應cookie print(r.text) #響應文本 print(r.encoding) # 當前編碼 print(r.content) #以字節形式(二進制)返回最常用的是根據響應狀態碼判斷接口是否連通,經常用于做接口中斷言判斷
6.requests擴充
1:添加等待時間 requests.get(url,timeout=1) #超過等待時間則報錯 2:添加請求頭信息 requests.get(url,headers=headers) #設置請求頭 3:添加文件 requests.post(url, files=files) #添加文件文件傳輸
url = 'http://httpbin.org/post' files = {'file': open('report.xls', 'rb')} r = requests.post(url, files=files)7.requests+pytest+allure
流程如下
讀取文件中的數據 requests拿到數據請求接口返回狀態碼 通過斷言驗證返回狀態碼和200對比 生成allure的測試報告讀取csv文件流程
1.存儲數據
2.讀取數據
3.requests請求接口返回狀態碼
4.pytest斷言設置并結合allure生成測試報告
import pytest,os from requestsdemo.requestcsv import RequestsClass r=RequestsClass() rr=r.requestMethod()class TestRequestsClass():def testCsv(self):for i in rr:assert i==200if __name__ == '__main__':pytest.main(['--alluredir', 'report/result', 'test_csv.py'])split = 'allure ' + 'generate ' + './report/result ' + '-o ' + './report/html ' + '--clean'os.system(split)
5.測試報告展示
讀取excel文件流程
1.存儲數據
2.讀取數據
3.requests請求接口返回狀態碼
4.pytest斷言設置并結合allure生成測試報告
5.測試報告展示
總結
以上是生活随笔為你收集整理的Python接口测试之requests的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python单元测试之pytest
- 下一篇: 搭建JMeter+Jenkins+Ant