pytest-常用插件

控制用例的执行顺序

下载插件:

pip install pytest-ordering

使用:

import pytest

@pytest.mark.run(order=3)
def test_case_02():
    assert 1

@pytest.mark.run(order=4)
def test_case_01():
    assert 1

@pytest.mark.run(order=1)
def test_case_03():
    assert 1

class TestCase(object):
    @pytest.mark.run(order=2)
    def test_case_04(self):
        assert 1

使用order参数来控制用例的执行顺序,注意的是,order参数是一个正整数。

失败重试

失败重试意思是指定某个用例执行失败可以重新运行,为了避免某个接口本身么有问题,但是由于网络或其他原因导致本次测试时,失败了,那么,我们需要对种接口进行多次尝试,以增加成功率。

下载

pip install pytest-rerunfailures

使用

在配置文件中的addopts添加一个参数:

[pytest]
addopts = -s -v --reruns=3

当某个接口断言失败,然后该接口最多尝试重跑3次。当在指定的次数之内,尝试成功,后续的重跑不在执行。如果尝试次数重试完毕,但依然断言失败,则最终该接口判定为断言失败。

并发执行

下载:

pip install pytest-xdist

使用

在配置文件中添加:

[pytest]
addopts =  -v -s --html=report/report.html -n=auto
;addopts = -s --alluredir ./report/result
testpaths = ./scripts/
python_files = test_case_01.py
python_classes = Test*
python_functions = test_*

就是这个-n=auto

  • -n=auto,自动侦测系统里的CPU数目。
  • -n=numprocesses,也就是自己指定运行测试用例的进程数。

并发的配置可以写在配置文件中,然后其他正常的执行用例脚本即可。

你可能感兴趣的:(pytest-常用插件)