⑴ python自動化測試怎麼將多個依賴數據
介面測試中,有些場景介面間存在著數據依賴的問題,比如說提交訂單前需要用戶先登錄等等,下面就用兩個小案例說說數據依賴的問題。
兩個介面,一個介面(project_add)用來創建測試項目,一個介面(env_add)用來創建測試環境,env_add介面需依賴project_add介面返回的project_id欄位數據。
一、Postman解決數據依賴的問題
這樣數據依賴的問題就搞定了
二、用python代碼實現介面數據依賴
用代碼解決數據依賴的方法有多種,下面用反射來解決數據依賴的問題。
反射它可以把字元串映射到實例的變數或者實例的方法然後,可以去執行調用、修改等操作。
它有四個重要的方法:
getattr 獲取指定字元串名稱的對象屬性
setattr 為對象設置一個對象
hasattr 判斷對象是否有對應的對象(字元串)
delattr 刪除指定屬性
classRelyData(object):
project_id=Noneprint(RelyData.project_id)
setattr(RelyData,"project_id", "111")print(getattr(RelyData, "project_id"))
定義了一個RelyData()類,裡面設置了一個類屬性,project_id=None,然後再用setattr函數為對象RelyData裡面project_id屬性設置了新值,最後再用getattr函數取出裡面的值,這是個屬性值替換的過程。
classTest(unittest.TestCase):defsetUp(self):pass
deftest_1(self):"""添加項目介面"""url=
"http://127.0.0.1:8000/base/project_add/"headers= {'Content-Type':
'application/x-www-form-urlencoded'}
datas= {"prj_name": " search", "description": "網路搜索"}
response= requests.post(url, data=datas, headers=headers)print("response:", response.json())