什麼是json?
一種輕量級的資料交換格式。它獨立於語言和平台,json解析器和json庫支援不同的程式語言。json具有自我描述性,很容易理解。
資料格式:
介面最常見的資料格式就是json,現在我們來實踐一下如何開發json格式的api介面from flask import執行程式:flask, request, jsonify)"
/api/sub/
", methods=["
post"])
defsub():
ifnot request.json: #
如果請求資料型別非json
return jsonify()
ifnot"a
"in request.json or
not"b"
in request.json: #
如果引數中沒有a或者沒有b
return jsonify()
a = request.json.get("a"
) b = request.json.get("b"
) result = str(float(a) - float(b)) #
使用float支援浮點數相減
return jsonify() #
使用jsonify將字典資料轉換為json型別的相應資料
if__name__ == '
__main__':
執行此介面
使用測試工具測試介面
新增headers後訪問成功。
通過python**測試上面的介面
請求資料要轉化為字串:
data=json.dumps(data)
(使用json.dumps需要import json)json格式的響應資料,在介面除錯通過和穩定的情況下可以使用response.json()解析為字典格式,進行斷言
import
requests
import
json
base_url = "
"def
test_sub_normal():
url = base_url + "
/api/sub/
"headers = #
1. 必須通過headers指定請求內容型別為json
data =
data = json.dumps(data) #
2. 序列化成字串
response = requests.post(url=url, headers=headers, data=data)
#3. 響應解析 # 響應格式為:
resp_code = response.json().get("
code")
resp_msg = response.json().get("
msg"
) resp_data = response.json().get("
data")
(resp_code, resp_msg, resp_data)
#斷言assert response.status_code == 200
assert resp_code == "
100000
"assert resp_msg == "成功"
assert resp_data == '
2.0'
if__name__ == "
__main__":
test_sub_normal()
python基礎3 json操作
例子1 json就是字串 import json d json str json.dumps d 把字典 list轉成字串 json print json str json str2 dic json.loads json str2 把字串 json 轉成字典 print dic 例子2 d1 wi...
python測試介面 Python 介面測試(一)
1.概念 介面測試是測試系統元件間介面的一種測試。介面測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的互動點。測試的重點是要檢查資料的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關係等。2.環境準備 1.安裝python 2.安裝requests庫。也可以在cmd輸入 pip ins...
python介面測試 json作為配置檔案的處理
最近寫了一部分介面測試,覺得需要把配置相關的引數玻璃出來,這樣改動的時候只需要改動配置檔案就行了 所以研究了幾種配置檔案,比如xml ini等等 發現讀寫起來比較複雜 其實是自己懶不想去學,哈哈!再後來看到也有人用json檔案來作為配置檔案,仔細一想,確實可行,且讀取起來比較簡單,所以,開始幹吧 這...