2
鑑於這樣的代碼在somemod.py
的:觸發導入錯誤,以測試覆蓋率後備代碼
try:
Import cStringIO as StringIO
except ImportError:
import StringIO
一個如何測試「回退」分支?
(用例:努力實現100%覆蓋一致認爲,這是一個有點傻目標:))。
併發症:
- 代碼
test_somemod.py
具有import somemod
運行
- Mocking ImportError in Python涵蓋了一些這個,但是很複雜!
要獲得額外的信用,任何方式獲得m ock.patch只涉及特定的測試用例嗎? –
嗯,從來沒有使用過mock.patch,但是應該很容易將它變成一個裝飾器,你可以給它一個模塊列表,在輸入時隱藏,在退出時退出。 – jterrace
到目前爲止,它似乎像導入醜陋周圍一些醜陋。我真正的解決方案是使用「#pragma:no cover」使coverage.py忽略它!我將不得不挖掘我的經驗。 –