婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Pytest中skip和skipif的具體使用方法

Pytest中skip和skipif的具體使用方法

熱門(mén)標(biāo)簽:上海正規(guī)的外呼系統(tǒng)最新報(bào)價(jià) 煙臺(tái)電話(huà)外呼營(yíng)銷(xiāo)系統(tǒng) 外賣(mài)地址有什么地圖標(biāo)注 如何地圖標(biāo)注公司 電銷(xiāo)機(jī)器人錄音要學(xué)習(xí)什么 企業(yè)彩鈴地圖標(biāo)注 長(zhǎng)春極信防封電銷(xiāo)卡批發(fā) 銀川電話(huà)機(jī)器人電話(huà) 預(yù)覽式外呼系統(tǒng)

skip的用法

使用示例:@pytest.mark.skip(reason="跳過(guò)的原因,會(huì)在執(zhí)行結(jié)果中打印")

標(biāo)記在測(cè)試函數(shù)中

舉個(gè)🌰

import pytest


def test_1():
    print("測(cè)試用例1")


@pytest.mark.skip(reason="沒(méi)寫(xiě)完,不執(zhí)行此用例")
def test_2():
    print("測(cè)試用例2")

執(zhí)行結(jié)果如下:

標(biāo)記在測(cè)試類(lèi)的測(cè)試用例中

舉個(gè)🌰

import pytest

class TestCase(object):
    def test_1(self):
        print("測(cè)試用例1")


    @pytest.mark.skip(reason="沒(méi)寫(xiě)完,不執(zhí)行此用例")
    def test_2(self):
        print("測(cè)試用例2")

執(zhí)行結(jié)果如下

標(biāo)記在測(cè)試類(lèi)方法上

舉個(gè)🌰

import pytest


@pytest.mark.skip(reason="沒(méi)寫(xiě)完,不執(zhí)行此用例")
class TestCase1(object):
    def test_1(self):
        print("測(cè)試用例1")

    def test_2(self):
        print("測(cè)試用例2")


class TestCase2(object):
    def test_3(self):
        print("測(cè)試用例3")

    def test_4(self):
        print("測(cè)試用例4")

執(zhí)行結(jié)果如下

總結(jié)

  • @pytest.mark.skip 可以加在函數(shù)上,類(lèi)上,類(lèi)方法上
  • 如果加在類(lèi)上面,則類(lèi)里面的所有測(cè)試用例都不會(huì)執(zhí)行

在測(cè)試用例執(zhí)行期間強(qiáng)制跳過(guò)

以一個(gè)for循環(huán)為例,執(zhí)行到第3次的時(shí)候跳出

import pytest

def test_demo():
    for i in range(50):
        print(f"輸出第【{i}】個(gè)數(shù)")
        if i == 3:
            pytest.skip("跑不動(dòng)了,不再執(zhí)行了")

執(zhí)行結(jié)果如下

在模塊級(jí)別跳過(guò)測(cè)試用例

語(yǔ)法:pytest.skip(msg="",allow_module_level=False)

當(dāng)allow_module_level=True時(shí),可以設(shè)置在模塊級(jí)別跳過(guò)整個(gè)模塊

import pytest

pytest.skip("跳過(guò)整個(gè)模塊", allow_module_level=True)

@pytest.fixture(autouse=True)
def test_1():
    print("執(zhí)行測(cè)試用例1")

def test_2():
    print("執(zhí)行測(cè)試用例2")

執(zhí)行結(jié)果如下

有條件的跳過(guò)某些用例

語(yǔ)法:@pytest.mark.skipif(condition, reason="")

import sys
import pytest


@pytest.mark.skipif(sys.platform == 'darwin', reason="does not run on MacOS")
class TestSkipIf(object):
    def test_demo(self):
        print("不能在MacOS上運(yùn)行")

注意:condition需要返回True才會(huì)跳過(guò)

執(zhí)行結(jié)果如下:

跳過(guò)標(biāo)記的使用

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

舉個(gè)🌰

import sys
import pytest

skipmark = pytest.mark.skip(reason="不執(zhí)行此用例")
skipifmark = pytest.mark.skipif(sys.platform == 'darwin', reason="does not run on MacOS")


@skipifmark
class TestSkipIf(object):
    def test_demo(self):
        print("不能在MacOS上運(yùn)行")


@skipmark
def test_1():
    print("測(cè)試用例1")


def test_2():
    print("測(cè)試用例2")

執(zhí)行結(jié)果如下

當(dāng)缺少某些導(dǎo)入時(shí)跳過(guò)用例

語(yǔ)法:

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

參數(shù):

  • modname: 需要被導(dǎo)入的模塊名稱(chēng),比如 selenium;
  • minversion: 表示需要導(dǎo)入的最小的版本號(hào),如果該版本不達(dá)標(biāo),將會(huì)打印出報(bào)錯(cuò)信息;
  • reason: 只有當(dāng)模塊沒(méi)有被導(dǎo)入時(shí),給定該參數(shù)將會(huì)顯示出給定的消息內(nèi)容

找不到對(duì)應(yīng)module

舉個(gè)🌰

import pytest
rock = pytest.importorskip("rock")

@rock
def test_1():
    print("測(cè)試是否導(dǎo)入了rock模塊")

運(yùn)行結(jié)果

如果版本不達(dá)標(biāo)

舉個(gè)🌰

import pytest
sel = pytest.importorskip("selenium", minversion="3.150")

@sel
def test_1():
  	print("測(cè)試是否導(dǎo)入了selenium模塊")

運(yùn)行結(jié)果

整理參考

小菠蘿的測(cè)試筆記

到此這篇關(guān)于Pytest中skip和skipif的具體使用方法的文章就介紹到這了,更多相關(guān)skip和skipif的使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python單元測(cè)試之pytest的使用
  • python使用pytest接口自動(dòng)化測(cè)試的使用
  • Python測(cè)試框架:pytest學(xué)習(xí)筆記
  • python pytest進(jìn)階之xunit fixture詳解
  • python中pytest收集用例規(guī)則與運(yùn)行指定用例詳解

標(biāo)簽:佳木斯 西寧 盤(pán)錦 湖北 珠海 潮州 宜昌 上饒

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Pytest中skip和skipif的具體使用方法》,本文關(guān)鍵詞  Pytest,中,skip,和,skipif,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Pytest中skip和skipif的具體使用方法》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Pytest中skip和skipif的具體使用方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 勐海县| 肇庆市| 张北县| 陆良县| 岢岚县| 沁水县| 长宁区| 浑源县| 九龙坡区| 武定县| 马公市| 山东省| 宜兰县| 本溪市| 汽车| 昔阳县| 米泉市| 广宗县| 大同市| 瓦房店市| 逊克县| 盐山县| 永仁县| 安溪县| 墨脱县| 杭锦后旗| 元谋县| 丰宁| 科技| 乌鲁木齐县| 黄浦区| 赫章县| 宣武区| 共和县| 南宫市| 兴仁县| 铁力市| 浠水县| 上虞市| 汕头市| 莒南县|