Python unittest詳解二(測試夾具)
阿新 • • 發佈:2019-03-05
split unittest 添加 per ima 函數 python .com 分享圖片
關於測試夾具,我們知道,以類為對象的話,在python裏對應的方法分別是test_isupper、test_upper, 那麽以測試case為單位呢?
這時候,就要提到我們的setup()和tearDown()啦,在這裏setup()函數做每個單元測試的初始化操作,而對應的tearDown()做每個單元測試的析構操作,首先我們在類裏加入兩個函數:
重新執行py文件,結果如圖:
我們會發現在各個測試case執行前後會執行setUp()與tearDown(),包括test_upper()、test_isupper()。另外如果setUp()執行失敗的話,情況會怎麽樣呢?
我們在setUp()函數裏添加“拋出異常”操作,執行後我們會發現所有的測試case都報error了,大致如圖:
同樣的,若setup()執行成功,對應的測試case執行失敗並且報error的話,這時tearDown()函數會執行嗎?讓我們試試吧。
我們在test_split()函數裏加上“拋出異常”操作,執行後確認若setup()成功,那麽不論之後測試case結果如何,對應的tearDown()函數都會執行。情況如圖:
關於以測試case為單位的測試夾具總體如上所示,運行測試case時都會自動調用測試夾具中的setUp(),tearDown()。
Python unittest詳解二(測試夾具)