zoukankan      html  css  js  c++  java
  • Pytest(7)自定义用例顺序pytest-ordering

    前言

    测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果.
    有些同学在写用例的时候,用例写了先后顺序, 有先后顺序后,后面还会有新的问题(如:上个用例返回数据作为下个用例传参,等等一系列的问题。。。)
    github 上有个pytest-ordering插件可以控制用例的执行顺序,github插件地址https://github.com/ftobia/pytest-ordering
     

    安装依赖包

    pip3 install pytest-ordering
    

    小例子

    先看pytest默认的执行顺序,是按 test_ording.py 文件写的用例先后顺序执行的

    import pytest
    
    
    def test_1():
        print("用例1")
        assert True
    
    
    def test_2():
        print("用例2")
        assert True
    
    
    def test_3():
        print("用例3")
        assert True
    

    运行结果

    collecting ... collected 3 items
    
    test_1.py::test_1 PASSED                                                 [ 33%]用例1
    
    test_1.py::test_2 PASSED                                                 [ 66%]用例2
    
    test_1.py::test_3 PASSED                                                 [100%]用例3
    
    
    ============================== 3 passed in 0.02s ===============================
    

    使用 pytest-ordering 插件后改变测试用例顺序

    import pytest
    
    
    @pytest.mark.run(order=3)
    def test_1():
        print("用例1")
        assert True
    
    
    @pytest.mark.run(order=1)
    def test_2():
        print("用例2")
        assert True
    
    
    @pytest.mark.run(order=2)
    def test_3():
        print("用例3")
        assert True
    

    运行结果

    collecting ... collected 3 items
    
    test_1.py::test_2 PASSED                                                 [ 33%]用例2
    
    test_1.py::test_3 PASSED                                                 [ 66%]用例3
    
    test_1.py::test_1 PASSED                                                 [100%]用例1
    
    
    ============================== 3 passed in 0.02s ===============================
    

    这样就是按指定的顺序执行的用例

  • 相关阅读:
    YaCy is a free search engine
    html css js dom树到底是什么关系
    清华的搜索课程
    Gentle中的O/R映射Attributes
    PHP headers_sent() 函数
    阿里云服务器怎么设置能让网站发邮件
    关于PHP 开启zlib gzip配置
    thinkphp无法加载控制器:Admin
    阿里云邮件服务器怎么设置才能在QQ邮箱访问,互发邮件?
    linux下配置apachenutch 笨笨熊
  • 原文地址:https://www.cnblogs.com/jiakecong/p/14291858.html
Copyright © 2011-2022 走看看