Pytest單元測試框架如何實現引數化
阿新 • • 發佈:2020-09-08
1、傳入單個引數
pytest.mark.parametrize(argnames,argvalues)
argnames:引數名
argvalues:引數對應的值,型別必須為可迭代型別,一般為 list
import pytest class Test01(): @pytest.mark.parametrize("school",["深圳多測師","廣州多測師","上海多測師"]) def test_dcs(self,school): print(school) if __name__ == '__main__': pytest.main(["-s","test_demo1.py"]) # 結果如下 test_demo1.py 深圳多測師. 廣州多測師. 上海多測師.
2、傳入多個引數
pytest.mark.parametrize((arg1,arg2),[(argvalue1,argvalue2),(argvalue3,argvalue4)])
list 中每個元素都是個元組,元組裡的每個元素都與引數一一對應
import pytest class Test01(): @pytest.mark.parametrize(("school","schoolmaster"),[("深圳多測師","Mr.Chen"),("上海多測師","Mr.Xie"),("廣州多測師","Mr.Fu")]) def test_dcs(self,school,schoolmaster): print("{}校區的校長是{}".format(school,schoolmaster)) if __name__ == '__main__': pytest.main(["-s","test_demo1.py"]) # 結果如下 test_demo1.py 深圳多測師校區的校長是Mr.Chen. 上海多測師校區的校長是Mr.Xie. 廣州多測師校區的校長是Mr.Fu.
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。