• Novice学Pytest(3)setup和teardown执行顺序


    一、前言

      虽然知道自动化脚本一般要写前后置方法,但有时还是会记不清执行顺序和具体意义。。。其中setup翻译是设置,teardown翻译是拆卸

      unittest有2个前置方法和2个后置方法,分别是:

    • setup()
    • setupClass()
    • teardown()
    • teardownClass()

      pytest提供了10种方法,分别是:

    • 模块级别:setup_module、teardown_module
    • 函数级别:setup_function、teardown_function,不在类中的方法
    • 类级别:setup_class、teardown_class
    • 方法级别:setup_method、teardown_method
    • 方法细化级别:setup、teardown

      二、实例代码

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    """
    __Title__   =
    __Time__    =  2021/8/7 19:12
    __Author__  =  Isaymore
    __Blog__    =  https://www.cnblogs.com/huainanhai/
    """
    
    import pytest
    
    def setup_module():
        print("======整个.py模块开始前只执行一次:打开浏览器======")
    
    def teardown_module():
        print("======整个.py模块结束后只执行一次:关闭浏览器======")
    
    def setup_function():
        print("===每个函数级别用例开始前都执行setup_function===")
    
    def teardown_function():
        print("===每个函数级别用例结束后都执行teardown_function===")
    
    def test_one():
        print("one")
    
    def test_two():
        print("two")
    
    class Testcase:
        def setup_class(self):
            print("====整个测试类开始前只执行一次setup_class====")
    
        def teardown_class(self):
            print("====整个测试类结束后执行一次teardown_class====")
    
        def setup_method(self):
            print("==类里面每个用例执行前都会执行setup_method==")
    
        def teardown_method(self):
            print("==类里面每个用例结束后都会执行teardown_method==")
    
        def setup(self):
            print("类里面每个用例执行前都会执行setup")
    
        def teardown(self):
            print("类里面每个用例结束后后都会执行teardown")
    
        def test_three(self):
            print("three")
    
        def test_four(self):
            print("four")
    
    if __name__ == '__main__':
        pytest.main(["-q","-s","-ra","test_order.py"])

      执行结果:

    参考链接:https://www.cnblogs.com/poloyy/p/12641991.html

  • 相关阅读:
    elselect下拉数据过多解决办法
    移动端开发遇到的问题汇总
    win7系统可关闭的服务
    安装Qcreator2.5 + Qt4.8.2 + MinGW_gcc_4.4 (win7环境)
    学习Qt的资源
    c++学习 定位new表达式
    eltablecolumn中添加echarts
    js对象数组封装,形成表格,并在表格中添加echarts直折线图
    Unity学习笔记3:随机数和动画脚本
    关于Unity的一些概念和语法
  • 原文地址:https://www.cnblogs.com/huainanhai/p/15113303.html
Copyright © 2020-2023  润新知