Pytest系列(11)- 失败重跑插件rerunfailures

安装插件

安装方法:

pip install pytest-rerunfailures

使用方法

命令行参数

  • 指定重试次数: --reruns n
#表示运行失败的用例重新运行2次
pytest --reruns2
  • 指定间隔时间:--reruns-delay m
#表示运行失败的用例重新运行2次,执行时时间间隔为5s
pytest --reruns2 --reruns-delay 5

举个小栗子,代码如下👇

def test1():
    b = 1+2
    assert 3==b

def test2():
    b = 1+2
    assert 2 == b

命令行输入:

pytest --reruns 2 --reruns-delay 3 filename.py

运行结果如下:

使用装饰器

使用方法:@pytest.mark.flaky(reruns=重试次数,reruns_delay=延时设置(单位为秒)

def test1():
    b = 1+2
    assert 3==b

@pytest.mark.flaky(reruns=3,reruns_delay=2)
def test2():
    b = 1+2
    assert 2 == b

运行结果如下:

🎉ATTENTION:

  • 如果在flaky中指定了重新运行次数,那么在命令行中添加的reruns对这些用例是不会起作用滴(即flaky的优先级比较高)
posted @ 2021-11-27 18:59  莫伊101  阅读(57)  评论(0编辑  收藏  举报