這篇文章主要介紹“pytest如何使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化”,在日常操作中,相信很多人在pytest如何使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”pytest如何使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)公司2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元九臺做網(wǎng)站,已為上家服務(wù),為九臺各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108
1.方法詳情:
parametrize(argnames,argvalues,indirect=False,ids=None,scope=None)
常用參數(shù):
argnames:參數(shù)名
argvalues:參數(shù)值(可以為list和tuple,或者字典列表,字典元組等),參數(shù)值有N個(gè),用例就會執(zhí)行N次。
2.使用方法
2.1.一個(gè)列表中一個(gè)參數(shù)多個(gè)值
示例代碼:
data_list1 = ['data1', 'data2', 'data3', 'data4'] @pytest.mark.parametrize('data', data_list1) def test_01(data): print(data)
運(yùn)行結(jié)果:
2.2.多參數(shù)多值
示例代碼:
data_list2 = [('zhang1', '123456'), ('zhang2', '654321'), ('zhang3', '456789')] @pytest.mark.parametrize('username, pwd', data_list2) def test_02(username, pwd): print(username + ':' + pwd)
運(yùn)行結(jié)果:
2.3.多個(gè)參數(shù)混合使用
示例代碼:
data_list3 = ['zhang', 'li'] data_list4 = ['wang', 'liu'] data_list5 = ['zhao', 'qian'] @pytest.mark.parametrize('a', data_list3) @pytest.mark.parametrize('b', data_list4) @pytest.mark.parametrize('c', data_list5) def test_03(a, b, c): print('組合后的結(jié)果為', {a}, , {c})
2.4.傳入字典數(shù)據(jù)
示例代碼:
dict_data = ({'username': 'zhang', 'password': '123456'}, {'username': 'li', 'password': '654321'}) @pytest.mark.parametrize('data', dict_data) def test_04(data): print(data.get('username') + ':' + data.get('password')) # print(data['username'] + ':' + data['password'])
運(yùn)行結(jié)果:
到此,關(guān)于“pytest如何使用@pytest.mark.parametrize()實(shí)現(xiàn)參數(shù)化”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!