欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pytest用例執(zhí)行順序和跳過(guò)執(zhí)行詳解

 更新時(shí)間:2023年02月07日 10:16:50   作者:此時(shí)  
本文主要介紹了pytest用例執(zhí)行順序和跳過(guò)執(zhí)行詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1.py文件的執(zhí)行順序

pytest默認(rèn)按字母順序去執(zhí)行的(小寫(xiě)英文--->大寫(xiě)英文--->0-9數(shù)字)

setup_module->setup_claas->setup_function->testcase->teardown_function->teardown_claas->teardown_module

1)文件之間按照ASCLL碼排序

2)文件內(nèi)默認(rèn)按照從上到下進(jìn)行執(zhí)行

文件內(nèi)的用例按照從上往下執(zhí)行。

2. 改變用例的執(zhí)行順序 -裝飾器@pytest.mark.run(order=x)

@pytest.mark.run(order=x) 需要pip install pytest-ordering

@pytest.mark.run(order=x)

# x是整數(shù)(可以是正數(shù)也可以是負(fù)數(shù))

# 全為正數(shù)或負(fù)數(shù)時(shí),值越小,優(yōu)先級(jí)越高

# 既有正數(shù)又有負(fù)數(shù)時(shí),正數(shù)優(yōu)先級(jí)高(-1,2,-3的執(zhí)行順序是2,-3,-1)

# 0是正整數(shù)中最小的,優(yōu)先級(jí)最高

@pytest.mark.run(order=0)

# 兩個(gè)0是,就按照正常順序執(zhí)行

已經(jīng)改變了用例執(zhí)行規(guī)則,針對(duì)于是全局的,會(huì)先執(zhí)行完@pytest.mark.run(order=1)才會(huì)執(zhí)行order=2的用例

其實(shí)總體來(lái)說(shuō),這個(gè)插件的實(shí)用場(chǎng)景不是很多,如果需要指定某個(gè)用例第一個(gè)執(zhí)行和最后執(zhí)行,可以用該插件實(shí)現(xiàn)。

如果要按照你指定的順序執(zhí)行下去,需要在每個(gè)用例前都加上@pytest.mark.run(order=1),其中order中的數(shù)字需遞增。

 

方式一

方式二

方式三

第一個(gè)執(zhí)行

:@ pytest.mark.first

:@ pytest.mark.run('first')

:@ pytest.mark.run(order=1)

第二個(gè)執(zhí)行

:@ pytest.mark.second

:@ pytest.mark.run('second')

:@ pytest.mark.run(order=2)

倒數(shù)第二個(gè)執(zhí)行

:@ pytest.mark.second_to_last

:@ pytest.mark.run('second_to_last')

:@ pytest.mark.run(order=-2)

最后一個(gè)執(zhí)行

:@pytest.mark.last

:@ pytest.mark.run('last')

:@ pytest.mark.run(order=-1)

3. 分組執(zhí)行用例

在工作中有的時(shí)候我們并不需要執(zhí)行所有用例,所以就會(huì)用到分組執(zhí)行啦。

這里同樣也要用到裝飾器@pytest.mark

1)在pytest.ini中配置分組

[pytest]
markers=g1
g2

這個(gè)設(shè)置的作用就是標(biāo)記用例進(jìn)行分組

2)測(cè)試用例加入標(biāo)記

3)運(yùn)行用例

需要輸入pytest -m '分組名'

4) 多個(gè)分組用例運(yùn)行需要用or進(jìn)行連接

5)運(yùn)行除標(biāo)記外的用例

pytest.main(['-vs', 'zmytest/test_order.py', '-m', "not g2 and not g1"])

4. pytest跳過(guò)測(cè)試用例

pytest.mark.skip:跳過(guò)用例執(zhí)行

跳過(guò)執(zhí)行,跳過(guò)分為有條件跳過(guò)和無(wú)條件跳過(guò)

1、無(wú)條件跳過(guò)

@pytest.mark.skip(reason="XXX")

2、有條件跳過(guò)

@pytest.mark.skipif(age>=18,reason='已成年')

1)無(wú)條件跳過(guò)

@pytest.mark.skip(reason="XXX")
@pytest.mark.skip

2)有條件跳過(guò)

@pytest.mark.skipif(條件,reason='')這個(gè)方法就是當(dāng)滿足條件時(shí)跳過(guò)被標(biāo)記的用例,什么是被標(biāo)記?就是這個(gè)裝飾器下面的第一條用例

 到此這篇關(guān)于pytest用例執(zhí)行順序和跳過(guò)執(zhí)行詳解的文章就介紹到這了,更多相關(guān)pytest用例執(zhí)行順序和跳過(guò)執(zhí)行內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論