有些场景用例是需要指定顺序执行的,或者直接跳过,或者根据条件跳过
一.默认顺序
二.指定顺序
三不执行
四.条件不执行
一.默认顺序:ASCII码的顺序自动排序
二.order控制
@pytest.mark.run(order=n) 会按照n的数字大小顺序执行
注意安装工具 pip install pytest_ordering。不然既不报错,又不运行
三.直接跳过
@pytest.mark.skip(“跳过的条件说明,用rs指令就可以打印出来”)
四.条件不执行,条件满足就不执行
@pytest.mark.skipif(condition=="条件值",reason="smoketest")
Terminal命令执行时:pytest logiuyo.py -rs -s -v 注释:-rs表示显示详细信息 -s表示显示print信息 -v表示显示详细信息
以下是代码实例
import pytest
condition="冒烟测试"
class Test_Class2():
def setup_method(self):
print('setup_method')
@pytest.mark.run(order=2)
def test_01(self):
print("测试方法1")
@pytest.mark.run(order=1)
def test_02(self):
print('测试方法2')
@pytest.mark.skipif(condition=="冒烟测试",reason='smoketest')
def test_03(self):
print('测试方法3')
def teardown_method(self):
print('teardown_method')
运行结果

本文介绍了如何使用 Pytest 工具控制测试用例的执行顺序和跳过策略。通过 `pytest.mark.run(order=n)` 可以指定测试顺序,使用 `pytest.mark.skip` 和 `pytest.mark.skipif` 实现跳过功能。示例代码展示了如何在测试类中应用这些标记,并提供了 Terminal 命令行参数的使用方法。
972

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



