全網最全最新的Pytest框架快速進階篇

新夢想IT發表於2022-09-02


一、 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  執行結果顯示更清楚。

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940641/viewspace-2913174/,如需轉載,請註明出處,否則將追究法律責任。

相關文章