Excel介面自動化(6)封裝資料儲存的邏輯

2021-10-06 22:15:20 字數 2039 閱讀 7145

# 處理資料儲存的邏輯

from config.public_data import request_data,response_data

class

relydatastore()

:def

__int__

(self)

:pass

@classmethod

defdo

(self, storeponit, apiname, caseid, request_source, response_source)

:# request_source其實是requestdata,response_source其實是responsedata

# 儲存資料的格式

for key, value in storeponit.items():

# 依賴的儲存資料來自於請求引數

if key ==

"request"

:for i in value:

if i in request_source:

if apiname not

in request_data:

# 說明儲存資料的結構還未生成,需要指明資料儲存結構

# request_data = }} 依賴資料的格式

request_data[apiname]=}

else

:# 說明儲存資料結構中最外層結構是存在的,但是記憶體結構還不明確是否生成,所以需要進行判斷一下

ifstr

(caseid)

in request_data[apiname]

: request_data[apiname]

[str

(caseid)

][i]

= request_source[i]

else

: request_data[apiname]

[str

(caseid)]=

else

:print

("請求引數中不存在字段"

+ i)

# 依賴的儲存資料來自於響應body

elif key ==

"response"

:for j in value:

if j in response_source:

if apiname not

in response_data:

# 說明儲存資料的結構還未生成,需要指明資料儲存結構

response_data[apiname]=}

else

:# 說明儲存資料結構中最外層結構是存在的,但是記憶體結構還不明確是否生成,所以需要進行判斷一下

ifstr

(caseid)

in response_data[apiname]

: response_data[apiname]

[str

(caseid)

][j]

= response_source[j]

else

: response_data[apiname]

[str

(caseid)]=

else

:print

("響應body中不存在字段"

+ j)

if __name__ ==

"__main__"

: r =

s =res =

relydatastore.do(s,

"register",1

, r, res)

print

("request_data="

, request_data)

print

("response_data="

, response_data)

介面自動化get post的封裝

requests庫是用python編寫的,基於urllib,採用apache2 licensed開源協議的http庫更詳細的介紹,請參考 下面講解get方法和post方法的封裝和呼叫 import requests,json class runbymethod post請求方式 def run po...

Excel介面自動化(8)介面測試自動化指令碼

介面測試自動化指令碼 整個流程的邏輯基本都是在這裡面實現,所需要的資料都是通過呼叫前面的封裝來獲取 第一步 新建乙個解析excel工具類的例項物件並且獲取 api 的sheet物件 parsee parseexcel parsee.loadworkbook filepath sheetobj par...

python介面自動化之請求封裝

python介面自動化之請求封裝 示例 匯入requests請求包 import requests 建立request請求方法封裝類 class sendrequest 建立封裝請求方法 方法中設定http method url data header cookie 新增異常處理 try 判斷請求是...