目录
前言:
pytest 是一个广泛使用的 Python 测试框架。它具有强大的测试运行器、测试驱动开发和测试结果可视化等功能。除此之外,pytest 还支持许多第三方插件,这些插件可以为测试带来更多的便利和功能。
本文只介绍pytest-ordering、pytest-rerunfailures、pytest-xdist三种插件,报告方面的插件会另起篇幅进行介绍。
顺序执行:pytest-ordering
- 安装:
pip install pytest-ordering - 使用方式:在方法上加入下面装饰器
- 标记于被测试函数,@pytest.mark.run(order=x)
- 根据 order 传入的参数来解决运行顺序
- order 值全为正数或全为负数时,运行顺序:值越小,优先级越高
- 正数和负数同时存在:正数优先级高
默认情况下,pytest 是根据测试方法名由小到大执行的,可以通过第三方插件包改变其运行顺序。
# test_abc.py
#默认执行方式
#示例:
import pytest
class Test:
def test_a(self):
print("------->test_a")
assert 1
def test_b(self):
print("------->test_b")
assert 0
if __name__ == '__main__':
pytest.main(["-s","test_abc.py"])
#执行结果:
test_abc.py
------->test_a # 默认第一个运行
.
------->test_b # 默认第二个运行
F
改变顺序后
#示例:
import pytest
class Test:
@pytest.mark.run(order=2)
def test_a(self):
print("------->test_a")
assert 1
@pytest.mark.run(order=1)
def test_b(self):
print("------->test_b")
assert 0
if __name__ == '__main__':
pytest.main(["-s","test_abc.py"])
#执行结果:
test_abc.py
------->test_b # order=1 优先运行
F

本文介绍了pytest的三个第三方插件:pytest-ordering用于顺序执行测试,pytest-rerunfailures实现失败重试,pytest-xdist支持并行执行测试,以提高测试效率。通过示例展示了各插件的安装和使用方法。
最低0.47元/天 解锁文章
468

被折叠的 条评论
为什么被折叠?



