4、Pytest常用命令行选项--case相关

以下内容纯属个人理解,如有不足,还请指正,转载请注明出处,喜欢请动动小指头点赞评论哦(▽)!

pytest 命令运行语法
pytest --help

在这里插入图片描述

常用case相关参数说明
参数完整命令说明使用场景
–collect-onlypytest --collect-only收集目录下所有的用例测试运行之前,检查选中的用例是否符合预期
-kpytest -k “删选条件”模糊筛选指定的case希望只运行特定的用例
-mpytest -m “标记名称”标记测试并分组,以便快速选中并运行与@pytest.mark.标签,配合使用,只会运行有定定标记的用例
-xpytest -x遇到错误即停止整个测试,下面的case不会运行debug时常用
–maxfail=numpytest --maxfail=2明确指定失败几次后停止整个测试批量运行时,错误超过预期次数时,停止运行脚本
–lf(–last-failed)pytest --lf脚本运行失败后,仅重试失败的用例只运行失败的用例,其它状态的用例不会运行
–ff(–failed-first)pytest --ff与–lf相似,先运行失败用例,其它用例也会运行脚本希望从失败用例开始运行
详细举例说明

case文件为:

#cd code/ch1/test_two.py
import  pytest
def test_a():
    assert (1, 2, 3) == (1, 2, 3)

def test_failing():
    assert (1, 2, 3) == (3, 2, 1)

def test_failing2():
    assert (1, 2, 3) == (3, 2, 1)

def test_b():
    assert (1, 2, 3) == (1, 2, 3)

@pytest.mark.smoke1
def test_c():
    assert (1, 2, 3) == (1, 2, 3)
@pytest.mark.smoke2
def test_d():
    assert (1, 2, 3) == (1, 2, 3)

1、–collect–only:收集目录下所有的用例

pytest -–collect-only

在这里插入图片描述
2、-k:模糊筛选指定的case,只要匹配到了就,就收集运行

pytest -k "a or b"

在这里插入图片描述
从运行结果可以看出,-k是会按条件模糊查找case名称中的信息,只要匹配到了就,就收集运行

3、-m:运行带用指定标记的用例,常于@pytest.mark结合使用

pytest -m “smoke1 or smork2” test_two.py

在这里插入图片描述
注:上图的mark警告信息是由于,mark标记 smoke1等不是fixture自带的标记,为自定义标记,所以报错,解决办法将在@pytest.mark内详细说明
4、-x:遇到失败停止运行脚本

pytest -x test_two.py

在这里插入图片描述
上图可以看出,遇到停卡,其它几条用例就不再运行
5、–maxfail=num:达到num错误次数再停卡整个case,此参数与-x类似,都是遇错误终止

 pytest --maxfail=2  test_two.py

在这里插入图片描述
6、–lf(–last-failed):运行最后一次失败用例,且只运行失败的case(前提是已经运行过的用例有失败的一次运行,-x我们已经有过一次失败了)

pytest -lf test_two.py

在这里插入图片描述
7、–ff(–failed-first):同lf相似,但–ff是所有的case都会运行,只是优先运行上次失败的case,再运行其它状态的case

pytest -lf test_two.py

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值