parametrize
- 參數化可以組裝測試數據。在測試前定義好測試數據,并在測試用例中使用
單參數單次循環
- 我們可以在裝飾器中使用
mark.parametrize
,來定義參數名和參數值列表- 參數名還需要傳給函數
- 參數名需要用字符串來定義,參數值列表需要用可迭代對象來定義
- 如果我們只定義了一個參數名,并且只有一個參數值元素,那么只會將該元素賦值給參數名后,執行一次該測試用例
單參數多次循環
- 如果我們的參數值列表有多個元素,那么pytest會依次將列表中的每一個元素都賦值給參數,同時執行一次測試用例
多參數多次循環
- 我們可以定義多個參數名,并設置對應的多個參數值列表
- 每個參數名都需要傳給函數
- 注意參數值列表中的每個元素也需要是可迭代對象,比如我們可以使用元組,列表等
- 參數值列表的對象還可以使用字典來定義
- 注意:我們需要用字典中訪問value的方式,即
["key"]
來訪問value
- 當我們的參數值列表中的元素為字典時,那么我們賦值給參數名的時字典對象,因此可以有多個key值