单元测试界的高富帅,Pytest框架,用例标记和测试执行怎么做

本文详细介绍了Pytest中的内置标记,如parametrize、skip、skipif、xfail和usefixtures,以及如何自定义标记并根据标记筛选执行测试用例。通过这些标记,可以更灵活地管理单元测试,实现用例的参数化、条件跳过、预期失败处理和测试夹具的使用。同时,文章展示了如何通过命令行选择特定标记的用例进行执行。
摘要由CSDN通过智能技术生成

一、pytest 中内置的标记

单元测试界的高富帅,Pytest框架,用例标记和测试执行怎么做

pytest 标记使用需要通过 pytest.mark.标记 来使用,pytest 中为应对各种测试场景也内置了很多的标记。

1.1、pytest.mark.parametrize:用例参数化的标记

通过 parametrize 可以将用例数据和用例执行的逻辑代码分离,并实现根据用例,自动生成测试用例。

Demo:

@pytest.mark.parametrize('item',[11,22,33,44,55,66])
def test_demo(item)
  assert item > 50

1.2、pytest.mark.skip:跳过用例执行

通过 skip 装饰的用例,在执行的时候会无条件跳过,

参数 reason:跳过测试函数的原因。

Demo

# 不写跳过原因
@pytest.mark.skip
def test_demo()
  assert item > 50


# 写跳过原因
@pytest.mark.skip(reason='不需要执行')
def test_demo()
  assert item > 50

1.3、pytest.mark.skipif:根据条件跳过用例

skipif 可以根据条件来决定是否跳过用例的执行, 如果条件为 True 则跳过测试函数执行。

参数 :condition —跳过的条件

参数 :reason —跳过的原因

Demo

a = 10
@pytest.mark.skipif(a > 20,reason='条件不成立,不执行')
def test_demo()
  assert item > 50

1.4、pytest.mark.xfail:标记预期失败的用例

xfail 可以将测试函数标记为预期执行失败的用例。

参数 :condition — 将测试函数标记为 xfail 的条件(True/False )

参数 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值