【Pytest02】全网最全最新的Pytest框架快速进阶篇(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  执行结果显示更清楚。

 

如果你此文你也有同感,如果你觉得此文对你有帮助,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入:

软件测试技术群:695458161,群里发放的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

作者:来自公众号:软测之家
出处:https://www.cnblogs.com/csmashang/p/12521064.html
欢迎转载,但未经作者同意请保留此段声明,并在文章页面明显位置给出原文链接。

笔者来自公众号:软测之家 软件测试技术交流群:695458161
原文地址:https://www.cnblogs.com/csmashang/p/12521064.html