Pytest 测试用例执行顺序自定义 Pytest-ordering

一. 简介

Pytest-ordering 是一个 Pytest 插件,可自定义 Pytest 测试用例的执行顺序。这对于确保特定的测试用例在其他测试用例之前或之后运行非常有用。


二. 使用场景

对于集成测试,经常会有上下文依赖关系的测试用例。比如 10 个步骤,拆成 10 条 case,这时候能知道到底执行到哪步报错。而用例默认执行顺序是自上而下执行的。这时可以通过 setup,teardown 和 fixture 来解决。也可以使用对应的插件。


三. 使用步骤

  • 安装pip install pytest-ordering

  • 用法@pytest.mark.run(order=2)

    • 注意:多个插件装饰器(>2)的时候,有可能会发生冲突。

      • 代码示例:不使用 Pytest-ordering

        python 复制代码
        import pytest
        
        #@pytest.mark.run(order=2)
        @pytest.mark.third
        def test_foo():
            assert True
        
        # @pytest.mark.run(order=1)
        @pytest.mark.first
        def test_bar():
            assert True
        
        # @pytest.mark.run(order=2)
        @pytest.mark.second
        def test_bar1():
            assert True
        • 运行结果:可以看出是按照顺执行的测试用例
      • 代码示例:使用 Pytest-ordering

        python 复制代码
        import pytest
        
        @pytest.mark.run(order=2)
        @pytest.mark.third
        def test_foo():
            assert True
        
        @pytest.mark.run(order=1)
        @pytest.mark.first
        def test_bar():
            assert True
        
        @pytest.mark.run(order=2)
        @pytest.mark.second
        def test_bar1():
            assert True
        • 再次运行,结果为1、test_bar,2、test_bar1,3、test_foo

相关推荐
我的xiaodoujiao1 天前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
测试老哥1 天前
接口自动化测试分层设计与实践总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
AC赳赳老秦3 天前
招投标公开数据自动化采集实战:基于 OpenClaw 的定时抓取与业务关键词精准推送
运维·服务器·数据库·自动化·测试用例·deepseek·openclaw
一孤程5 天前
Pytest+Selenium搭建自动化框架-保姆级实战教程
selenium·自动化·pytest
天才测试猿6 天前
Selenium自动化测试网页加载太慢怎么解决?
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
BullSmall7 天前
大模型基础测试用例库完整编写方案 + 核心注意事项
测试用例
名字还没想好☜8 天前
用 pytest fixture 组织可维护的测试:告别一堆重复的 setUp
数据库·python·oracle·pytest·测试
一孤程9 天前
AI辅助测试用例生成实战——用大模型把测试设计效率提升300%
人工智能·测试工具·ai·aigc·测试用例·测试·测试覆盖率