日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python基于paramunittest模塊實現excl參數化

瀏覽:18日期:2022-07-27 14:28:42

一、總結說明

Windows環境安裝:paramunittest cmd輸入命令:pip install paramunittest

總結說明:

1.paramunittest是unittest實現參數化的一個專門的模塊,可以傳入多組參數,自動生成多個用例2.導入paramunittest:import paramunittest3.paramunittest支持字典、元組、列表作為入參列表格式:[['vaule'],['vaule2']],setParameters賦值的個數與列值一一對應,例如此列表格式列值只有一個,賦值時只能自定義一個值元組格式:(('pwd','vaule'),('pwd','vaule2')),元組列值必須保證兩個以上,如果只有一個值,setParameters時報錯,setParameters賦值的個數與列值一一對應,例如此元組格式列值有2個,賦值時只能自定義2個值字典格式:[{'key': 'vaule' },{'key': 'vaule2'}],字典保證key值一致,如相同個數,相同位置,例如此字典格式列值只有一個key,setParameters賦值時只能定義一個key值4.賦予列表/字典/元組值:@paramunittest.parametrized(*list/tuple)5.列表元組賦予列值:def setParameters(self, t1, t2, tN):’’’注意t1, t2, t3名稱自定義,從左到右按順序一一對應值’’’self.t1 = t1self.t2 = t2self.tN = tN6.列表元組取列值def testcase(self): self.t17.字典單賦予列值:def setParameters(self, key, keyN):’’’注意key, keyN是與字典key值必須一一對應’’’self.key = keyself.keyN = keyN8.列表元組取取列def testcase(self): self.key1,字典通過key獲取vaulue值特別注意:如列值下標大于10時,執行順序是先執行0,1再執行10,11,再執行2,3,.....9

二、源碼舉例(列表)

說明:一般讀取exel會生成一個列表,如果使用exel作為參數化,可以參考此

#!/usr/bin/python3# encoding:utf-8import unittestimport paramunittestimport timelist =[ [’test’, ’123456’, ’true’], [’test1’, ’1234564’, ’true’]]@paramunittest.parametrized(*list)class TestDemo(unittest.TestCase): def setParameters(self, user, pwd, result): ’’’注意user, pwd, result是從左到右按順序一一對應’’’ self.user = user self.pwd = pwd self.result = result def testcase(self): print('開始執行用例:--------------') time.sleep(1) print('輸入用戶名:%s' % self.user) print('輸入密碼:%s' % self.pwd) print('期望結果:%s ' % self.result) time.sleep(1) self.assertTrue(self.result == 'true')if __name__ == '__main__': #verbosity=2 顯示用例執行詳情 unittest.main(verbosity=2)

運行結果

testcase (paramunittest.TestDemo_0) ... 開始執行用例:--------------輸入用戶名:test輸入密碼:123456期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_1) ... 輸入用戶名:test1輸入密碼:1234564期望結果:true ok

----------------------------------------------------------------------Ran 2 tests in 4.003s

OK

三、源碼舉例(字典)

#!/usr/bin/python3# encoding:utf-8import unittestimport paramunittestimport timedict =[ {'user': 'test', 'pwd': '123456', 'result': 'true'}, {'user': 'test1', 'pwd': '1234564', 'result': 'true'}, {'user': 'test2', 'pwd': '1234564', 'result': 'true'}, {'user': 'test3', 'pwd': '1234564', 'result': 'true'}, {'user': 'test4', 'pwd': '1234564', 'result': 'true'}, {'user': 'test5', 'pwd': '1234564', 'result': 'true'}, {'user': 'test6', 'pwd': '1234564', 'result': 'true'}, {'user': 'test7', 'pwd': '1234564', 'result': 'true'}, {'user': 'test8', 'pwd': '1234564', 'result': 'true'}, {'user': 'test9', 'pwd': '1234564', 'result': 'true'}, {'user': 'test10', 'pwd': '1234564', 'result': 'true'}, {'user': 'test11', 'pwd': '1234564', 'result': 'true'}]@paramunittest.parametrized(*dict)class TestDemo(unittest.TestCase): def setParameters(self, user, pwd, result): ’’’user, pwd, result三個參數字典的key一一對應’’’ self.user = user self.pwd = pwd self.result = result def testcase(self): print('開始執行用例:--------------') time.sleep(1) print('輸入用戶名:%s' % self.user) print('輸入密碼:%s' % self.pwd) print('期望結果:%s ' % self.result) time.sleep(1) self.assertTrue(self.result == 'true')if __name__ == '__main__': #verbosity=2 顯示用例執行詳情 unittest.main(verbosity=2)

運行結果

#說明:框架問題:當字典大于10時,執行順序是先執行0,1再執行10,11,再執行#2,3,.....9testcase (paramunittest.TestDemo_0) ... 開始執行用例:--------------輸入用戶名:test輸入密碼:123456期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_1) ... 輸入用戶名:test1輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_10) ... 輸入用戶名:test10輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_11) ... 輸入用戶名:test11輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_2) ... 輸入用戶名:test2輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_3) ... 輸入用戶名:test3輸入密碼:1234564期望結果:true ok開始執行用例:--------------

testcase (paramunittest.TestDemo_4) ... 輸入用戶名:test4輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_5) ... 輸入用戶名:test5輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_6) ... 輸入用戶名:test6輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_7) ... 輸入用戶名:test7輸入密碼:1234564期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_8) ... 輸入用戶名:test8輸入密碼:1234564期望結果:true ok開始執行用例:--------------

testcase (paramunittest.TestDemo_9) ... 輸入用戶名:test9輸入密碼:1234564期望結果:true ok

----------------------------------------------------------------------Ran 12 tests in 24.018s

OK

四、源碼舉例(元組)

#!/usr/bin/python3# encoding:utf-8import unittestimport paramunittestimport timetuple=( ('test','123456','true'), ('test1','1234564','true') )#另一種賦值方式:直接賦值#@paramunittest.parametrized(# ('test','123456','true'),# ('test1','1234564','true')#)@paramunittest.parametrized(*tuple)class TestDemo(unittest.TestCase): def setParameters(self, user, pwd, result): ’’’注意user, pwd, result是從做到右按順序一一對應’’’ self.user = user self.pwd = pwd self.result = result def testcase(self): print('開始執行用例:--------------') time.sleep(1) print('輸入用戶名:%s' % self.user) print('輸入密碼:%s' % self.pwd) print('期望結果:%s ' % self.result) time.sleep(1) self.assertTrue(self.result == 'true')if __name__ == '__main__': #verbosity=2 顯示用例執行詳情 unittest.main(verbosity=2)

運行結果

testcase (paramunittest.TestDemo_0) ... 開始執行用例:--------------輸入用戶名:test輸入密碼:123456期望結果:true ok開始執行用例:--------------testcase (paramunittest.TestDemo_1) ... 輸入用戶名:test1輸入密碼:1234564期望結果:true ok

----------------------------------------------------------------------Ran 2 tests in 4.002s

OK

五、問題:

問題描述:一個元組只有一個列值,如('test'),('test1'),setParameters之后運行報錯如下:

testcase (paramunittest.TestDemo_0) ... ERRORtestcase (paramunittest.TestDemo_1) ... ERROR

======================================================================ERROR: testcase (paramunittest.TestDemo_0)----------------------------------------------------------------------Traceback (most recent call last):File 'D:pythonazlibsite-packagesparamunittest.py', line 89, in setUpself.setParameters(*parameters[0], **parameters[1])TypeError: setParameters() takes 2 positional arguments but 5 were given

解決方法:保證一個元組列值兩個以上,如('test','123456'),('test1','123')

注:只有元組有這個問題,列表或字典無此問題

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品美女久久久久久不卡| 久久国产影院| 91亚洲国产| 91精品啪在线观看国产爱臀| 欧美日韩国产综合网| 国产成人免费| 国产精品久久久久久久久久白浆 | 黄色不卡一区| 成人国产精品久久| 日韩在线欧美| 黄色aa久久| 精品视频在线观看网站| 97视频热人人精品免费| 精品伊人久久| 精品视频一区二区三区在线观看 | 狠狠色综合网| 日韩在线观看一区二区| 亚洲乱码一区| 国产日韩欧美一区在线| 国产精品久久久久久久久免费高清| 亚洲不卡av不卡一区二区| 九色精品91| 亚洲视频播放| 欧美日一区二区三区在线观看国产免| 免费视频一区二区| 人人香蕉久久| 91精品尤物| 综合激情在线| 丝瓜av网站精品一区二区| 国产96在线亚洲| 91精品精品| 国产一区精品福利| 国产一区二区三区久久| 久久中文字幕一区二区三区| 91综合网人人| 成人福利av| 婷婷精品视频| 欧美精品一二| 国产精品7m凸凹视频分类| 亚洲久久一区| 麻豆成人91精品二区三区| 午夜精品一区二区三区国产| 久久精品免费看| 日韩电影在线视频| 日韩黄色在线观看| 精品九九久久| 国产精品毛片久久| 国产亚洲久久| 精品久久国产一区| 亚洲国内精品| 国产模特精品视频久久久久| 日韩精品视频中文字幕| 电影91久久久| 久久国产电影| 亚洲一区二区三区高清不卡| 日韩在线黄色| 国产高清精品二区| 97se综合| 天堂成人国产精品一区| 久久av电影| 日韩va亚洲va欧美va久久| 国产一区三区在线播放| 激情婷婷综合| 国产91欧美| 国产精品美女久久久| 亚洲一级淫片| 精品视频一区二区三区四区五区 | 国产精品高潮呻吟久久久久| 日韩国产激情| 在线一区二区三区视频| 国产精品成人3p一区二区三区| 国产日韩欧美一区| 免费不卡中文字幕在线| 日韩国产91| 日本在线高清| 国产日韩欧美一区二区三区在线观看| 国产在线观看www| 久久亚洲视频| 国产精品videossex| 视频一区二区欧美| 免费看久久久| 午夜免费一区| 综合日韩av| 亚洲在线国产日韩欧美| 欧美国产极品| 天堂av在线| 蜜桃久久av| 久久av资源| 欧美日韩国产v| 在线观看视频免费一区二区三区| 最新国产拍偷乱拍精品| 在线看片一区| 国产精品xxx在线观看| 久久影院午夜精品| 亚洲日本网址| 欧美一区免费| 亚洲欧美不卡| 国产亚洲久久| 91久久中文| 久久男人av| 欧美亚洲综合视频| 99综合视频| 久草免费在线视频| 日韩不卡一二三区| 久久福利毛片| 亚洲自拍另类| 精品网站999| 美美哒免费高清在线观看视频一区二区| 国产乱人伦丫前精品视频| 亚洲综合电影| 91成人在线网站| se01亚洲视频 | 欧美 日韩 国产一区二区在线视频 | 日本一区二区中文字幕| 九九九精品视频| 四季av一区二区凹凸精品| 欧美gv在线| 国产激情综合| 美腿丝袜在线亚洲一区| 中文字幕中文字幕精品| 久久国产影院| 天堂va在线高清一区| 国产亚洲综合精品| 欧美日韩一二| 99精品在线观看| 四虎4545www国产精品| av综合电影网站| 精品视频91| 欧美国产免费| 视频一区在线视频| 日韩福利视频一区| 日韩福利视频网| 国产日韩欧美一区二区三区在线观看 | 日本高清久久| 亚洲一区网站| 日韩手机在线| 国产九九精品| 日韩在线播放一区二区| 日韩精品2区| 久久精品一区| 成人欧美一区二区三区的电影| 天堂√中文最新版在线| 国产一区二区三区天码| 亚洲午夜久久| 色综合狠狠操| 日韩午夜视频在线| 久久精品福利| 六月婷婷一区| 蜜桃久久久久| 午夜国产精品视频| 精品久久美女| 免费日本视频一区| 色偷偷色偷偷色偷偷在线视频| 亚洲人亚洲人色久| 欧美成人精品| 久久婷婷一区| 日本h片久久| 韩日一区二区三区| 亚州国产精品| 91av一区| 九九99久久精品在免费线bt| 人人草在线视频| 99香蕉国产精品偷在线观看 | 亚洲v天堂v手机在线| 精品国产亚洲一区二区三区大结局| 群体交乱之放荡娇妻一区二区| 亚洲欧美日韩综合国产aⅴ| 精品色999| 日韩av一二三| 久久亚洲二区| 久久麻豆精品| 精品成人免费一区二区在线播放| 欧美伊人影院| 亚洲精品欧美| 男女男精品网站| 丝瓜av网站精品一区二区| 欧美亚洲在线日韩| 91成人在线网站| 青草综合视频| 久久激情五月婷婷| 一区二区不卡| 亚洲欧美在线专区| 亚洲日本三级| 日本a口亚洲| 精精国产xxxx视频在线播放| 不卡中文一二三区| 青青草伊人久久| 中文字幕日韩亚洲| 国产麻豆一区二区三区| 欧美99久久| 日韩高清在线不卡| 在线天堂中文资源最新版| 久久九九99| 国产亚洲电影| 欧美一区二区三区激情视频| 欧美视频一区| 不卡中文一二三区| 国产精品红桃| 日韩在线卡一卡二| 最新中文字幕在线播放|