测试框架-Pytest框架二(初始化清除)

目录

初始化和清除

模块级别

类级别

方法级别

目录级别


初始化和清除

# 模块级别的初始化及清除
def setup_module():
    print('\n********初始化-模块*******')
def teardown_module():
    print('*********清除-模块********')

class Test_rundemo0:
    # 类的初始化和清除
    @classmethod
    def setup_class(cls):
        print('==========初始化-类=========')
    @classmethod
    def teardown_class(cls):
        print('=========清除-类 ===========')
    # 方法的初始化和清除
    def setup_method(self):
        print('\n&&&&&&&&&&&初始化-方法&&&&&&&&&')
    def teardown_method(self):
        print('\n&&&&&&&&&&&清除-方法&&&&&&&&&&&&')
    def test_001(self):
        print('行到水穷处,坐看云起时')
    def test_002(self):
        print('判断整数和字符是否相等')
        assert 1 == 2,"整数不等于字符"

class Test_rundemo1:
    # 方法的初始化和清除
    def setup_method(self):
        print('\n&&&&&&&&&&&初始化-方法&&&&&&&&&')
    def teardown_method(self):
        print('\n&&&&&&&&&&&清除-方法&&&&&&&&&&&&')
    def test_101(self):
        print('行到水穷处,坐看云起时')
    def test_202(self):
        print('判断整数和字符是否相等')
        assert 1 == 1,"整数不等于字符"

运行日志如下:

模块级别

模块级别的初始化清除方法是对整个.py文件执行的操作,放在文件的最前面,class类之前,从开始运行到结束,对整个文件进行一次初始化和清除。使用setup_module()teardown_module()方法。

类级别

类级别的初始化和清除同unittest框架,需要使用@classmethod装饰器,对需要初始化和清除的class测试类进行一次初始化和清除工作。使用setup_class()teardown_class()方法。

方法级别

方法级别的初始化和清除对在测试类下面添加了测试用例方法级别的每一个测试用例进行初始化和清除工做,放在calss下面的所有测试用例方法之前使用。使用使用setup_method()teardown_method()方法。

目录级别

目录级别的初始化和清除需要在要初始化和清除的目录下面创建一个单独的.py文件,文件名为conftest。文件中的内容如下:

import pytest

@pytest.fixture(scope='package',autouse=True)
def st_emptyEnv():
    print('\n#############初始化—目录#############')
    yield
    # yield下面的内容为清除操作
    print('#############清除—目录#############')

目录文件初始化和清除需要使用pytest的装饰器方法,所以要导入pytest模块。清除代码放在yield生成器后面,在使用目录级别的清除的时候有一个BUG,清除机制并不一定会在最后一个用例运行完之后执行。这样的话一个目录的用例执行之后,因为没有执行清除操作,所以可能会导致后面的目录文件在执行时产生错误,不建议使用。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值