一、裝飾器
1.用setUp與setUpClass區別
setup():每個測試case運行前運行
teardown():每個測試case運行完后執行
setUpClass():必須使用@classmethod 裝飾器,所有case運行前只運行一次
tearDownClass():必須使用@classmethod裝飾器,所有case運行完后只運行一次
2.@是修飾符,classmethod是python里的類方法
二、執行順序
1.用類方法寫幾個簡單case,可以對比這篇:Selenium2+python自動化52-unittest執行順序
# coding:utf-8
import unittest
import time
class Test(unittest.TestCase):
??? @classmethod
??? def setUpClass(cls):
??????? print "start!"
???
??? @classmethod
??? def tearDownClass(cls):
??????? time.sleep(1)
??????? print "end!"
??? def test01(self):
??????? print "執行測試用例01"
??? def test03(self):
??????? print "執行測試用例03"
??? def test02(self):
??????? print "執行測試用例02"
??? def addtest(self):
??????? print "add方法"
if __name__ == "__main__":
??? unittest.main()
2.從執行結果可以看出,前置和后置在執行用例前只執行了一次。
start!
執行測試用例01
執行測試用例02
執行測試用例03
...end!
----------------------------------------------------------------------
Ran 3 tests in 1.001s
?