unittest:2 执行多条用例,仅执行一次setUp和tearDown

对象方法setUp()和tearDown() 每个用例执行前后都会被调用。但是有另外一种场景:setUp之后执行完所有用例,最后调用一次tearDown。比如打开网页,多条用例分别验证网页上的元素正确性,所有都验证完再关闭页面;而不希望每执行一条用例都需打开和关闭页面。

 

此时应使用类方法。

@classmethod
def setUpClass(cls):
    pass

@classmethod
def tearDownClass(cls):
    pass

 

 

示例:

#coding:utf-8
"""dinghanhua 2019-01"""

import unittest


class SecondTestCase(unittest.TestCase): #继承自TestCase

    @classmethod
    def setUpClass(cls):
        print("setUPClass\n")

    @classmethod
    def tearDownClass(cls):
        print("tearDownClass")

    def test001(self):
        print('test001')

    def test003(self):
        print('test003')

    def test002(self):
        print('test002')


if __name__ == 'main':
    unittest.main()

 

运行结果:

仅执行一次准备操作,执行完所有用例后,再执行清理操作。

 

the end!

 

posted @ 2019-01-16 22:06  dinghanhua  阅读(2205)  评论(0编辑  收藏  举报