unittest.TestCase()
:是全部測試用例類繼承的基本類,一個類只要繼承了unittest中的TestCase類就是一個測試用例類,就能夠在類中寫測試用例;from unittest import TestCase, main class MyTest(TestCase): # 繼承unittest.TestCase def setUp(self): # 測試用例執行前的初始化工做 print('開始執行') def tearDown(self): # 測試用例執行以後的善後工做 print('執行完畢') def testWay(self): print('這是測試用例') if __name__ == '__main__': main() # 運行全部的測試用例
unittest.TestSuite()
:用來建立測試套件,其中有一個addTest()方法能夠將一個或多個測試用例添加到測試套件中,先添加的哪一個方法就先運行哪一個方法;unittest.TextTextRunner()
:經過該類中的run()方法來運行suite所組裝的測試用例;unittest.defaultTestLoader()
:經過該類下面的discover()方法可自動根據測試目錄start_dir匹 配查找測試用例模塊(以test開頭,以.py結尾的文件,例如:test*.py), 並將查找到的測試用例 組裝到測試套件,所以能夠直接經過run()方法執行discover;unittest.skip()
:裝飾器,可過濾不須要執行的用例,使這個用例不執行;unittest.main()
:能夠方便的將一個單元測試模塊變爲可直接運行的測試腳本,main()方法使 用TestLoader類來搜索全部包含在該模塊中以「test」命名開頭的測試方法,並自動執行他們 ;setUp()
方法:用於測試用例執行前的初始化。如測試用例中須要訪問數據庫,能夠在setUp中創建數據庫鏈接並進行初始化。若是測試用例須要登陸web,能夠先獲取cookie,獲取文件句柄;tearDown()
方法:用於測試用例執行以後的善後工做,如關閉數據庫鏈接,關閉文件;assert*()
:斷言方法,至關於if-else裏面的條件判斷,在執行測試用例的過程當中,最終用例是否執行經過,是經過判斷測試獲得的實際結果和預期結果是否相等決定的;assertEqual(self, first, second, msg=None)
:判斷兩個參數是否相等,若是相等則測試用例經過;assertNotEqual(self, first, second, msg=None)
:判斷兩個參數是否相等,若是不相等則測試用例經過;assertTrue(self, expr, msg=None)
:判斷是否爲真,爲真則測試用例經過;assertFalse(self, expr, msg=None)
:判斷是否爲假,爲假則測試用例經過;assertIs(a, b, msg=None)
:斷言a是不是b,若是是則測試用例經過。from unittest import TestCase, main class MyTestCase(TestCase): # setUp、tearDown每次執行一個test開頭的方法時,都會調用一次 def setUp(self): print('setup') def tearDown(self): print('tearDown') def test_1(self): print('第一個測試用例') def test_2(self): print('第二個測試用例') if __name__ == '__main__': main()
參考:https://www.9xkd.com/user/plan-view.html?id=5676194510html