【Python】unittest测试框架中setup,teardown与setupclass,teardownclass的区别

  • 每次执行测试用例的时候都会去执行一次setUp 和tearDown
import unittest
class Test(unittest.TestCase):
    def setUp(self):
        print("start!=======")
    def test01(self):
        print("执行测试用例01")
    def test02(self):
        print("执行测试用例02")
    def test03(self):
        print("执行测试用例03")
    def addtest(self):
        print("add方法")
    def tearDown(self):
        print("end-------------------!")
if __name__ == "__main__":
    unittest.main()
  • setUpClass和tearDownClass,而这个只有在开始和结束的时候执行一次
import unittest
class Test(unittest.TestCase):
    @classmethod
    def setUpClass(self):
        print("start===============!")
    def test01(self):
        print("执行测试用例01")
    def test02(self):
        print("执行测试用例02")
    def test03(self):
        print("执行测试用例03")
    def addtest(self):
        print("add方法")
    @classmethod
    def tearDownClass(self):
        print("end!===================")
if __name__ == "__main__":
    unittest.main()`

总结:
setUp():每个测试方法运行前运行,测试前的初始化工作。一条用例执行一次,若N次用例就执行N次,根据用例的数量来定。
setUpClass():所有的测试方法运行前运行,为单元测试做前期准备,但必须使用@classmethod装饰器进行修饰,整个测试过程中只执行一次。

tearDown():每个测试方法运行结束后运行,测试后的清理工作。一条用例执行一次,若N次用例就执行N次。
tearDownClass():所有的测试方法运行结束后运行,为单元测试做后期清理工作,但必须使用@classmethod装饰器进行修饰,整个测试过程中只执行一次。

posted @ 2021-05-31 17:23  简小虫  阅读(1015)  评论(0编辑  收藏  举报