我有我的所有unittests文件夾。它們都包括:爲什麼導入*不運行導入的代碼?
if __name__ == '__main__':
unittest.TextTestRunner(verbosity=2).run(suite())
所以對它們進行測試我只需要導入測試腳本。我有一個test_all腳本,通過逐個導入它們來完成所有的單元測試。目前,這看起來像這樣:
from pyMS.test import test_baseFunctions
from pyMS.test import test_compareFeatureXMLmzML
from pyMS.test import test_config
from pyMS.test import test_featureFunctions
from pyMS.test import test_fileHandling
from pyMS.test import test_mzmlFunctions
from pyMS.test import test_output
from pyMS.test import test_parseFeatureXML
from pyMS.test import test_rFunctions
from pyMS.test import test_rPlots
[...]
這意味着每次添加或刪除新測試時,我都需要更改導入。因此,我想使用
from pyMS.test import *
但是,這不會運行任何代碼。我很好奇導入*不運行代碼的原因。 此外,如果有人知道一個解決方案(即筆記鼻子)來運行所有的單元測試,而不必一個一個地導入它們會很好。
感謝
NIEK
'if __name__ == __name __:'?我希望你的意思是'if __name__ =='__main __':'? – 2012-03-15 11:24:21
這看起來不是一種運行所有測試的好方法。 – 2012-03-15 11:31:35
woops呀,這就是我的意思 – 2012-03-15 11:32:14