0
我定義了一個非常簡單的配置管理器(解析配置文件並驗證其中存在某些鍵),現在我正在爲它編寫一些測試。使用`unittest`來驗證`exit`函數被調用
在配置文件無效的許多情況下,我希望配置處理程序調用exit()
。有什麼方法可以編寫測試以確保exit
被調用並仍在繼續測試?我可以,也可以僅爲測試環境,「模擬」exit
函數?
我使用Python 2.7和unittest
。
我定義了一個非常簡單的配置管理器(解析配置文件並驗證其中存在某些鍵),現在我正在爲它編寫一些測試。使用`unittest`來驗證`exit`函數被調用
在配置文件無效的許多情況下,我希望配置處理程序調用exit()
。有什麼方法可以編寫測試以確保exit
被調用並仍在繼續測試?我可以,也可以僅爲測試環境,「模擬」exit
函數?
我使用Python 2.7和unittest
。
sys.exit()
引發了SystemExit
異常,這應該被unittest框架捕獲。所以你可以檢查SystemExit
是爲那些測試用例而產生的。
例,exit_test.py
:
import sys
import unittest
def func():
sys.exit()
class MyTest(unittest.TestCase):
def test_func(self):
self.assertRaises(SystemExit, func)
if __name__ == "__main__":
unittest.main()
運行:
$ python exit_test.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s
OK
出色答卷,工作就像一個魅力。謝謝。 – mjgpy3 2013-04-05 16:12:46