国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

Pytest中skip skipif跳過用例詳解

瀏覽:16日期:2022-06-15 15:33:04
前言 pytest.mark.skip可以標記無法在某些平臺上運行的測試功能, 或者您希望失敗的測試功能希望滿足某些條件才執行某些測試用例,否則pytest會跳過運行該測試用例 實際常見場景:跳過非Windows平臺上的僅Windows測試,或者跳過依賴于當前不可用的外部資源(例如數據庫)的測試@pytest.mark.skip

跳過執行測試用例,有可選參數reason:跳過的原因,會在執行結果中打印

#!/usr/bin/env python# -*- coding: utf-8 -*-'''__title__ = __Time__ = 2020/4/9 13:49__Author__ = 小菠蘿測試筆記__Blog__ = https://www.cnblogs.com/poloyy/'''import pytest@pytest.fixture(autouse=True)def login(): print('====登錄====')def test_case01(): print('我是測試用例11111')@pytest.mark.skip(reason='不執行該用例!!因為沒寫好!!')def test_case02(): print('我是測試用例22222')class Test1: def test_1(self):print('%% 我是類測試用例1111 %%') @pytest.mark.skip(reason='不想執行') def test_2(self):print('%% 我是類測試用例2222 %%')@pytest.mark.skip(reason='類也可以跳過不執行')class TestSkip: def test_1(self):print('%% 不會執行 %%')

執行結果

Pytest中skip skipif跳過用例詳解

知識點

@pytest.mark.skip可以加在函數上,類上,類方法上 如果加在類上面,類里面的所有測試用例都不會執行 以上小案例都是針對:整個測試用例方法跳過執行,如果想在測試用例執行期間跳過不繼續往下執行呢?pytest.skip()函數基礎使用

作用:在測試用例執行期間強制跳過不再執行剩余內容

類似:在Python的循環里面,滿足某些條件則break 跳出循環

def test_function(): n = 1 while True:print(f'這是我第{n}條用例')n += 1if n == 5: pytest.skip('我跑五次了不跑了')

執行結果

Pytest中skip skipif跳過用例詳解

pytest.skip(msg='',allow_module_level=False)

當allow_module_level=True時,可以設置在模塊級別跳過整個模塊

#!/usr/bin/env python# -*- coding: utf-8 -*-'''__title__ = __Time__ = 2020/4/9 13:49__Author__ = 小菠蘿測試筆記__Blog__ = https://www.cnblogs.com/poloyy/'''import sysimport pytestif sys.platform.startswith('win'): pytest.skip('skipping windows-only tests', allow_module_level=True)@pytest.fixture(autouse=True)def login(): print('====登錄====')def test_case01(): print('我是測試用例11111')

執行結果

collecting ... Skipped: skipping windows-only testscollected 0 items / 1 skipped============================= 1 skipped in 0.15s ==============================

@pytest.mark.skipif(condition, reason='')

作用:希望有條件地跳過某些測試用例

注意:condition需要返回True才會跳過

@pytest.mark.skipif(sys.platform == ’win32’, reason='does not run on windows')class TestSkipIf(object): def test_function(self):print('不能在window上運行')

執行結果

collecting ... collected 1 item07skip_sipif.py::TestSkipIf::test_function SKIPPED [100%]Skipped: does not run on windows============================= 1 skipped in 0.04s ==============================

跳過標記 可以將pytest.mark.skip和pytest.mark.skipif賦值給一個標記變量 在不同模塊之間共享這個標記變量 若有多個模塊的測試用例需要用到相同的skip或skipif,可以用一個單獨的文件去管理這些通用標記,然后適用于整個測試用例集

# 標記skipmark = pytest.mark.skip(reason='不能在window上運行=====')skipifmark = pytest.mark.skipif(sys.platform == ’win32’, reason='不能在window上運行啦啦啦=====')@skipmarkclass TestSkip_Mark(object): @skipifmark def test_function(self):print('測試標記') def test_def(self):print('測試標記')@skipmarkdef test_skip(): print('測試標記')

執行結果

collecting ... collected 3 items07skip_sipif.py::TestSkip_Mark::test_function SKIPPED [ 33%]Skipped: 不能在window上運行啦啦啦=====07skip_sipif.py::TestSkip_Mark::test_def SKIPPED [ 66%]Skipped: 不能在window上運行=====07skip_sipif.py::test_skip SKIPPED [100%]Skipped: 不能在window上運行================================== 3 skipped in 0.04s ==============================

pytest.importorskip( modname: str, minversion: Optional[str] = None, reason: Optional[str] = None )

作用:如果缺少某些導入,則跳過模塊中的所有測試

參數列表

modname:模塊名 minversion:版本號 reasone:跳過原因,默認不給也行

pexpect = pytest.importorskip('pexpect', minversion='0.3')@pexpectdef test_import(): print('test')

執行結果一:如果找不到module

Skipped: could not import ’pexpect’: No module named ’pexpect’collected 0 items / 1 skipped

執行結果一:如果版本對應不上

Skipped: module ’sys’ has __version__ None, required is: ’0.3’collected 0 items / 1 skipped

到此這篇關于Pytest中skip skipif跳過用例詳解的文章就介紹到這了,更多相關skip skipif跳過用例內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Pytest
相關文章:
主站蜘蛛池模板: 国产午夜a理论毛片在线影院 | 欧美精品日日鲁夜夜添 | 国产三级a三级三级午夜 | 99热精品在线观看 | 国产精品久久久久国产精品 | 久久亚洲国产视频 | 久久国产精品久久久 | 日本尹人综合香蕉在线观看 | 91国内精品视频 | 久久国产精品免费观看 | 一级特黄aaa大片在 一级特黄aaa大片在线观看 | 一级片aaaa| 八戒午夜精品视频在线观看 | 亚洲综合自拍 | 国产成人香蕉久久久久 | 精品国产a| 18性欧美69 | 国产亚洲精品影达达兔 | 经典香港a毛片免费观看 | 欧美在线视频看看 | 亚洲欧美小视频 | 久草热在线观看 | 偷柏自拍亚洲欧美综合在线图 | 99精品久久久久久久免费看蜜月 | 国产精亚洲视频 | 最近韩国日本免费免费版 | 男操美女| 99视频久久精品久久 | 中文字幕成人免费高清在线视频 | 欧美成人www在线观看网页 | 久久两性视频 | 成年毛片 | 成年美女黄网站色视频大全免费 | 久草视频大全 | 久草热久草在线 | 国产成人免费午夜在线观看 | 成年美女黄网站小视频 | 成年女人aaaaa毛片 | 国产一级片播放 | 成人a免费α片在线视频网站 | 日韩美一区二区三区 |