在 pytest 中,默认情况下,测试用例是按照其在文件中的定义顺序执行的。然而,如果你想显式地指定测试用例的执行顺序,可以使用 pytest 提供的装饰器 @pytest.mark.run(order=n)
,其中 n
为一个整数,用于指定用例的顺序。
以下是一个示例:
import pytest
@pytest.mark.run(order=1)
def test_case1():
# 测试用例1的代码
@pytest.mark.run(order=2)
def test_case2():
# 测试用例2的代码
@pytest.mark.run(order=3)
def test_case3():
# 测试用例3的代码
在上述示例中,@pytest.mark.run(order=n)
装饰器被应用到每个测试用例函数上,并且 n
的值决定了用例的执行顺序。在这个示例中,test_case1
将首先执行,然后是 test_case2
,最后是 test_case3
。
需要注意的是,pytest.mark.run.order 插件默认是不安装的,你需要手动安装它。你可以通过以下命令使用 pip
安装 pytest-ordering:
$ pip install pytest-ordering
安装后,你就可以使用 @pytest.mark.run(order=n)
标记来指定测试用例的执行顺序。