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

您的位置:首頁技術(shù)文章
文章詳情頁

Python unittest裝飾器實現(xiàn)原理及代碼

瀏覽:29日期:2022-07-12 08:01:05

1、前言

前面講到unittest里面setUp可以在每次執(zhí)行用例前執(zhí)行,這樣有效的減少了代碼量,但是有個弊端,比如打開瀏覽器操作,每次執(zhí)行用例時候都會重新打開,這樣就會浪費很多時間。

于是就想是不是可以只打開一次瀏覽器,執(zhí)行完用例再關(guān)閉呢?這就需要用到裝飾器(@classmethod)來解決了。

2、@classmethod 裝飾器中的 setUpClass() 和 tearDownClass() 與 setUp() 和 tearDown() 的區(qū)別

setUp():每個測試 case 運行之前運行 tearDown():每個測試 case 運行完之后執(zhí)行 setUpClass():必須使用 @classmethod 裝飾器, 所有 case 運行之前只運行一次 @是修飾符,classmethod 是 python 里的類方法 tearDownClass():必須使用 @classmethod 裝飾器, 所有 case 運行完之后只運行一次

import unittestclass Test(unittest.TestCase): @classmethod def setUpClass(cls) -> None: print('-----開始執(zhí)行用例-----') def setUp(self) -> None: print('執(zhí)行用例準備動作...') def test01(self): print('第一條用例正在執(zhí)行...') def test02(self): print('第二條用例正在執(zhí)行...') def tearDown(self) -> None: print('用例執(zhí)行完結(jié)動作...') @classmethod def tearDownClass(cls) -> None: print('-----用例執(zhí)行結(jié)束-----') if __name__ == ’__main__’: unittest.main()#執(zhí)行結(jié)果如下:'''-----開始執(zhí)行用例-----執(zhí)行用例準備動作...第一條用例正在執(zhí)行...用例執(zhí)行完結(jié)動作...執(zhí)行用例準備動作...第二條用例正在執(zhí)行...用例執(zhí)行完結(jié)動作...-----用例執(zhí)行結(jié)束-----'''

from selenium import webdriverimport unittestfrom time import sleepclass DymLogin(unittest.TestCase): @classmethod def setUpClass(cls) -> None: ''' 所有的用例只需要執(zhí)行一次打開瀏覽器操作 ''' print('Test start...') cls.dr = webdriver.Chrome() cls.dr.get('http://www.duoyoumi.com/') cls.dr.implicitly_wait(10) cls.dr.maximize_window() cls.dr.find_element_by_class_name('login').click() sleep(1) @classmethod def tearDownClass(cls) -> None: sleep(2) cls.dr.quit() print('Test end...') def test_login01(self): ''' 賬號密碼都為空 ''' self.dr.find_element_by_name('loginName').clear() self.dr.find_element_by_name('loginPwd').clear() self.dr.find_element_by_xpath(’//*[@id='loginForm']/div/div/div/div[2]/div[1]/div[2]’).click() #登錄操作 TipsMsg = self.dr.find_element_by_class_name('promptLogin').text self.assertEqual(TipsMsg,'-請輸入登錄賬號!',msg='Test_login01 login exception') def test_login02(self): ''' 賬號正確,密碼為空 ''' self.dr.find_element_by_name('loginName').clear() self.dr.find_element_by_name('loginPwd').clear() self.dr.find_element_by_name('loginName').send_keys('17779828887') self.dr.find_element_by_xpath(’//*[@id='loginForm']/div/div/div/div[2]/div[1]/div[2]’).click() # 登錄操作 TipsMsg = self.dr.find_element_by_class_name('promptLogin').text self.assertEqual(TipsMsg, '-請輸入密碼!', msg='Test_login02 login exception') def test_login03(self): ''' 賬號密碼都正確 ''' self.dr.find_element_by_name('loginName').clear() self.dr.find_element_by_name('loginPwd').clear() self.dr.find_element_by_name('loginName').send_keys('17779828887') self.dr.find_element_by_name('loginPwd').send_keys('zy295240???') self.dr.find_element_by_xpath(’//*[@id='loginForm']/div/div/div/div[2]/div[1]/div[2]’).click() #登錄操作 sleep(2) TipsMsg = self.dr.find_element_by_css_selector('#w_nav_temp_1000 > div.fr.dl > a:nth-child(4)').text self.assertEqual(TipsMsg,'[退出]',msg='Test_login03 login exception')if __name__ == ’__main__’: unittest.main()#執(zhí)行結(jié)果如下'''Test start......Test end...----------------------------------------------------------------------Ran 3 tests in 25.253sOK'''

3、通過裝飾器跳過某條用例

添加裝飾器(@unittest.skip(''))

import unittestclass Test(unittest.TestCase): def setUp(self) -> None: print('---start---') def tearDown(self) -> None: print('---end---') def testbbb(self): print('case testbbb') @unittest.skip('testaaa 被跳過') def testaaa(self): print('case testaaa')if __name__ == ’__main__’: unittest.main()# 結(jié)果如下s.----------------------------------------------------------------------Ran 2 tests in 0.000sOK (skipped=1)---start---case testbbb---end---

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

標簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日本a级不卡| 久久xxxx| 国产精品视频一区二区三区四蜜臂| 视频一区欧美精品| 国产精品美女久久久| 午夜视频精品| 日韩精品一级二级 | 欧美一区影院| 欧美日韩一视频区二区| 国产欧美在线观看免费| 国产精品欧美在线观看| 欧美片网站免费| 国产精品一国产精品k频道56| 国产精选久久| 黄色在线网站噜噜噜| 久久男女视频| 国产亚洲在线| 97久久中文字幕| 久久影视三级福利片| 激情黄产视频在线免费观看| 欧美日韩精品一区二区视频| 99国产精品视频免费观看一公开| 99成人在线| 欧美天堂一区| 91视频一区| 婷婷激情综合| 蜜臀国产一区二区三区在线播放| 亚洲精品极品| 精品国产a一区二区三区v免费| 91精品韩国| 日韩中文字幕不卡| 国产精品久久久网站| 久久青青视频| 天堂va蜜桃一区二区三区| 欧美日韩午夜| 久久免费高清| 亚洲日韩视频| 国产成人精品一区二区免费看京| 激情五月综合| 国产欧美激情| 久久久777| 亚洲乱亚洲高清| 国产日韩亚洲欧美精品| 日韩不卡免费高清视频| 亚洲精品日韩久久| 天堂中文av在线资源库| 亚洲影院天堂中文av色| 久久亚州av| 国产精品社区| 麻豆国产精品视频| 国产视频欧美| 精品99在线| 中文字幕亚洲在线观看| 视频在线不卡免费观看| 男人的天堂亚洲一区| 成人在线免费观看91| 久久亚洲视频| 麻豆精品在线观看| 六月丁香综合| 黄色在线观看www| 日本aⅴ免费视频一区二区三区| 欧美国产美女| 国产a亚洲精品| 香蕉久久一区| 999国产精品永久免费视频app| 日本aⅴ精品一区二区三区| 久久久9色精品国产一区二区三区| 日本免费一区二区视频| 亚洲国产不卡| 成人在线视频免费看| 亚洲啊v在线免费视频| 久久久久免费av| 日韩高清不卡一区二区| 在线成人直播| 国产一区二区三区四区| 亚洲麻豆一区| 五月综合激情| 国产精品二区不卡| 日韩国产在线观看| 中文精品在线| 中文字幕人成乱码在线观看| 国产成人精品一区二区免费看京| 久久精品一区二区三区中文字幕| 欧美理论视频| 欧美交a欧美精品喷水| 午夜在线精品偷拍| 日韩欧美一区二区三区免费看| 亚洲主播在线| 日韩精品久久久久久久电影99爱 | 尤物在线精品| 超碰超碰人人人人精品| 国产精品久久久久久久免费软件 | 精品久久精品| 欧美日韩调教| 日韩在线成人| 国产一区二区高清| 91精品久久久久久久久久不卡| 国产精品久久久久久久久久白浆 | 欧美日韩亚洲一区二区三区在线| 香蕉精品999视频一区二区| 神马日本精品| 91亚洲国产高清| 麻豆高清免费国产一区| 久久国产视频网| 日韩美女精品| 日韩高清在线不卡| 1000部精品久久久久久久久| a日韩av网址| 国产aa精品| 麻豆国产精品| 精品淫伦v久久水蜜桃| 国产精品一区二区av交换| 久久黄色影视| 国产高清久久| 欧美亚洲福利| 亚洲精品国产日韩| 亚州精品视频| 日韩专区视频网站| 亚洲区欧美区| 亚洲欧美网站| 亚洲资源av| 91精品国产乱码久久久久久久| 国产一二在线播放| 国模精品一区| 中国字幕a在线看韩国电影| 98精品久久久久久久| 国产欧洲在线| 高清av不卡| 欧美一区久久久| 日本在线精品| 亚洲手机视频| 在线一区视频| 中文字幕一区二区av| 亚洲精品无播放器在线播放| 日本成人在线一区| 国产精品欧美在线观看| 国产日韩欧美一区在线| 欧美日韩亚洲一区在线观看| 久久精品99国产国产精| 国产乱码精品一区二区亚洲| 国产精品欧美三级在线观看| 国产精品va| 国产传媒在线观看| 91精品久久久久久久久久不卡| 欧美日韩精品一本二本三本 | 欧美日本不卡高清| 亚洲精品免费观看| 日本不卡视频在线| 国产精品九九| 麻豆mv在线观看| 日韩视频中文| 日韩黄色免费网站| 另类小说一区二区三区| 欧洲一级精品| 亚洲少妇自拍| 国产欧美日韩精品一区二区三区| 精品视频自拍| 999国产精品视频| 亚洲色图国产| 日本电影久久久| 精品91福利视频| 一区二区亚洲精品| 久色成人在线| 国产精品115| 久久免费黄色| 青草久久视频| 国产成人精品一区二区免费看京| 免费观看久久av| 日韩区欧美区| 日韩中文在线电影| 久久国产精品久久w女人spa| 欧美精品成人| 蜜桃一区二区三区| 国产欧美欧美| 在线观看免费一区二区| 欧美日韩一区二区三区不卡视频| 岛国av在线播放| 9色精品在线| 国产精品白丝av嫩草影院| 欧美日韩一二三四| 国产一区二区三区网| 免费人成网站在线观看欧美高清| 亚洲18在线| 欧美在线看片| 天堂8中文在线最新版在线| 亚洲综合二区| 久久99久久久精品欧美| 亚洲精品一区二区妖精| 国产精品一区二区99| 在线视频亚洲| 精品久久久亚洲| 免费在线看一区| 国产欧美一区二区精品久久久| 秋霞影院一区二区三区 | 91精品国产91久久久久久黑人| 婷婷精品久久久久久久久久不卡| 福利片在线一区二区| 久久国产精品色av免费看| 国产99久久| 久久久91麻豆精品国产一区|