前面讲到unittest里面setUp可以在每次执行用例前执行,这样有效的减少了代码量,但是有个弊端,比如打开浏览器操作,每次执行用例时候都会重新打开,这样就会浪费很多时间。
于是就想是不是可以只打开一次浏览器,执行完用例再关闭呢?这就需要用到装饰器(@classmethod)来解决了。
一、装饰器
- 用setUp与setUpClass区别
setup()
:每个测试case运行前运行teardown()
:每个测试case运行完后执行setUpClass():
必须使用@classmethod
装饰器,所有case运行前只运行一次tearDownClass()
:必须使用@classmethod
装饰器,所有case运行完后只运行一次
- @是修饰符,classmethod是python里的类方法
二、执行顺序
- 用类方法写几个简单case
import unittest
class test_01(unittest.TestCase):
@classmethod
def setUpClass(cls):
print("=================setUpclass=============&#