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

相关推荐
把头塞进显示器3 天前
电商平台-测试报告
python·selenium·pytest
啄缘之间4 天前
1.【SVA】什么是SVA?
经验分享·学习·测试用例·verilog·sva
2302_805771077 天前
Day13Jmeter数据驱动
功能测试·单元测试·测试用例·需求分析·测试
2302_805771077 天前
Day14Jmeter+数据库的操作
功能测试·单元测试·测试用例·需求分析
2302_805771077 天前
Day18在接口自动化测试中引入pytest用例管理框架
功能测试·单元测试·测试用例·需求分析·测试
昔我往昔8 天前
pytest日志问题排查记录
python·pytest
梧桐凰9 天前
AI 时代测试工程师的武器库:实战工具指南
人工智能·功能测试·测试用例
测试老哥10 天前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
程序员杰哥10 天前
UI自动化测试:Jenkins配置
自动化测试·软件测试·python·测试工具·职场和发展·jenkins·测试用例
黄昏恋慕黎明11 天前
博客论坛技术迭代
python·pytest