pytest資料引數化(資料寫入到.py檔案中)
引數化方法使用:在乙個方法或者函式前面新增下方的標記
@pytest.mark.parametrize(argnames, ar**alues)
argnames:要引數化的變數,string(逗號分隔),list,tuple
ar**alues:引數化的值,list,list[tuple]
引數化的值要和引數化的變數一一對應
舉例使用string:
@pytest.mark.parametrize(
"a,b",[
(10,20
),(10
,30)]
)def
test_param
(self, a, b)
:print
(a+b)
舉例使用list:
@pytest.mark.parametrize(
["a"
,"b"],
[(10,
20),(
10,30)
])deftest_param
(self, a, b)
:print
(a+b)
舉例使用tuple:
@pytest.mark.parametrize(
("a"
,"b"),
[(10,
20),(
10,30)
])deftest_param
(self, a, b)
:print
(a+b)
tuple和list的差別:
list後方新增.,可以識別list操作的方法,可以對該list進行修改
tuple後新增.,只能識別檢索和計算,不能對tuple進行修改
yaml實現list:
-10-20
-30yaml實現字典:
by:id
locator:name
action:click
yaml進行巢狀(二維陣列):
前提:pycharme內安裝yaml庫
安裝方法:開啟pycharme–設定(win在setting,mac在preference)–找到專案–點新增入口–搜尋pyyaml–安裝
yaml和pytest連用:即引數化值的部分更改為yaml的載入
# pytest和yaml連用
@pytest.mark.parametrize(
["a"
,"b"
], yaml.safe_load(
open
("./data.yaml"))
)def
test_param
(self, a, b)
:print
(a+b)
yaml內容舉例截圖:
python資料引數 python引數
函式引數 實際引數 位置實參 按順序 函式名 資料1,資料2 序列實參 拆 函式名 序列 關鍵字實參 按名字 函式名 形參名1 資料1,形參名2 資料2 字典實參 拆 函式名 字典 形式引數 限制實參傳遞方式 預設形參 可選 def 函式名 形參名1 資料1,形參名2 資料2 位置形參 必填 def...
Python之unittest引數化
unittest如何做引數化呢?我們在寫case 的時候如果就是引數不同,我們只需要把引數都寫到乙個list裡面,然後迴圈去執行這個case即可。unittest中有乙個模組parameterized,可以幫我們迴圈,不需要自己寫迴圈,直接pip install parameterized安裝即可。...
python資料引數 python 的引數總結
一 形參和實參 函式引數的作用是傳遞資料給函式使用 在使用的過程中,引數有兩種形式 形式引數和實際引數 形參 定義函式的引數 實參 呼叫函式時的引數 根據實際引數型別不同,將實際引數傳遞給形參的方式有兩種 值傳遞和引用傳遞 值傳遞 實參為不可變物件,傳遞給形參後,形參的值改變,實參值不變。如 fun...