python之接口自動化用例之間的依賴如何解決

思考:接口自動化怎麼解決用例之間的依賴
方式一:設置全局變量globals

方式二:.使用正則表達式和反射機制(高逼格)

場景:在Excel表中做的參數化數據,需要把值讀取成功後做If條件判斷,如果設置的條件等於Excel表中做的參數化標識符,就替換別的數據。But,Eecel表中100個參數化的數據,就要做100個判斷,再替換數據,這樣就很雞肋。SO,正則和反射就閃亮登場了~~~

將excel表中的測試用例參數化後,可以有兩種方式進行替換:a和b

a.利用字典,根據key把value取出來,判斷是否等於excel表中做的標識,進行覆蓋替換

s='{"mobilephone":"${admin_user}","pwd":"${admin_pwd}"}'
admin_user="13707796666"
admin_pwd="123456"

方式一:引入Json模塊,把字符串轉換成字典,根據Key去取值判斷
import json
dict_1=json.loads(s)
if dict_1["mobilephone"]=="${admin_user}":
    dict_1["mobilephone"]=admin_user

if dict_1["pwd"]=="${admin_pwd}":
    dict_1["pwd"]=admin_pwd

print(dict_1)

方式二:利用python內置函數find()函數和replace()函數進行查找和替換;
 字符串存在,find()函數就返回索引位置,字符串不存在,find()函數就返回-1
if s.find("${admin_user}")> -1:
    s=s.replace("${admin_user}",admin_user)#字符串是不能做修改的,要重新賦值才能顯示最新

if s.find("${admin_pwd}")>-1:
    s=s.replace("${admin_pwd}",admin_pwd)

print(s)

{'pwd': '123456', 'mobilephone': '13707796666'}
{"mobilephone":"13707796666","pwd":"123456"}

b.利用正則表達式:根據key,動態的去取值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章