pytest -ordering 更改执行用例的顺序
- 首先需要安装 pytest-ordering 插件来实现更改用例的执行顺序。
- 官方文档: https://pytest-ordering.readthedocs.io/en/develop/
- pytest默认状态下的执行顺序是从上到下
示例代码:
import pytest
class Test_login():
def test_login_001(self):
print("\n test login 001")
def test_login_002(self):
print("\n test login 002")
def test_login_003(self):
print("\n test login 003")
def test_login_004(self):
print("\n test login 004")
运行结果:
修改上面的示例:在每个function前增加一句 @pytest.mark.run(order=x)
import pytest
class Test_login():
@pytest.mark.run(order=3)
def test_login_001(self):
print("\n test login 001")
@pytest.mark.run(order=4)
def test_login_002(self):
print("\n test login 002")
@pytest.mark.run(order=1)
def test_login_003(self):
print("\n test login 003")
@pytest.mark.run(order=2)
def test_login_004(self):
print("\n test login 004")
运行结果:
可以看到用例的执行顺序完全是按照order的顺序来运行的!