1. 程式人生 > >python介面測試(一)——http請求及token獲取

python介面測試(一)——http請求及token獲取

使用python對當前的介面進行簡單的測試

1.介面測試是針對軟體對外提供服務得介面得輸入輸出進行得測試,驗證介面功能與介面描述文件得一致性

 返回結果可以為字串,json,xml等

2.介面的請求方式:get,post,delete,put等

3.介面測試需要的元素:url,請求方式,引數(key:value)

  比如“登入”:

#!/usr/bin/env python
#coding:utf-8
import requests,json
url="http://xxx.xxx.com/xxx/login"
headers={'Content-Type':'application/json;charset=UTF-8
'} request_param={ "phone":"18200000000", "password":"111111" } response=requests.post(url,data=json.dumps(request_param), headers=headers) print response.text

  注:

  1.get請求:引數是url,params,字典;把params的引數成為url的引數,也就是url中傳遞引數;

  2.post請求:引數是url,data, json以及字典,data其實就是以表單形式的資料,或者是把一個字典給data作為引數來傳遞;

  3.post請求有時需要把引數進行反序列化,即json.dumps(),將dict格式轉化為str格式;

  最後響應結果:

  

  事實上,如上圖的post請求中,登入成功後會返回一個token,然後後面的每個請求均會帶這個引數token去請求,即登入獲取token,把獲取的token帶上去請求或者操作其他業務;

  實現的思路:

  把登入寫成一個方法,然後把token返回,再做下一個請求的時候,把token當作引數來傳遞

    

  另外一個請求需要引用時,可以直接將獲取的token放在header裡

  headers={'Content-Type':'application/json;charset=UTF-8',

              "token":login.login() }

  登入成功後,返回了token,然後在執行其他介面的時候,直接把返回的token當作是引數來處理,但是有一點是必須先登入,再執行登入後的介面,要不會提示錯誤

  請求時我們可以獲取不同的響應內容:

  response.text    獲取響應內容,返回的時unicode資料

  response.status_code  獲取的是狀態碼

  response.content   獲取響應內容時bytes資料