控制用例的执行顺序
下载插件:
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
,也就是自己指定运行测试用例的进程数。
并发的配置可以写在配置文件中,然后其他正常的执行用例脚本即可。
网友评论