微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【Pytest02】全网最全最新的Pytest框架快速进阶篇

一、Pytest的前置和后置方法

1.Pytest可以集成unittest实现前置和后置

import unittest
import pytest

class TestCase(unittest.TestCase):
    def setUp(self) -> None:
        print('unittest每个用例前置')

    def tearDown(self) -> None:
        print('unittest每个用例后置')

    @classmethod
    def setUpClass(cls) -> None:
        print('unittest所有用例的前置,所有用例之前只执行一次!')

    @classmethod
    def tearDownClass(cls) -> None:
        print('unittest所有用例的后置,所有用例执行之后只执行一次')

    def test_03(self):
        print('测试用例三')

    def test04(self):
        print('测试用例四')

if __name__ == '__main__':
    pytest.main(['-s','pytest-demo.py'])

注意:setUpClass和tearDownClass需要用@classmethod装饰器装饰。

2.Pytest前置和后置

import pytest

class TestCase:

    def setup_class(self):
        print('Pytest所有用例的前置,所有用例之前只执行一次!')

    def teardown_class(self):
        print('Pytest所有用例的后置,所有用例执行之后只执行一次')

    def setup(self):
        print('Pytest每个用例前置')

    def teardown(self):
        print('Pytest每个用例后置')

    def test_03(self):
        print('测试用例三')

    def test04(self):
        print('测试用例四')

if __name__ == '__main__':
    pytest.main(['-s','pytest-demo.py'])

注意:setup、teardown、setup_class、teardown_class都是小写!

 

二、跳过用例

使用方法

 @pytest.mark.skipif(2>1,reason='当条件不True时跳过')

使用命令:pytest -vv  执行结果显示更清楚。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐