3
說,我有類似如下的Python代碼:如何對這個lambda代碼進行單元測試?
try:
from fabulous.color import fg256
format_info = lambda x: fg256(63, unicode(x, 'utf-8')).as_utf8
except ImportError:
format_info = lambda x: '\033[1;30m' + x + '\033[0m'
我怎麼能單元測試呢?
是否值得測試?
需要模擬導入語句,以便切除兩個分支。這是相當微不足道的 - 例如,模擬fg256
有副作用raise ImportError
。
匹配返回的字符串有正確的控制字符是好的,但感覺脆弱。
爲什麼要測試呢?在第一種情況下,似乎應該已經由包裝作者*執行了測試*,後一種情況......其正確性可以在兩行中正式證明。 – Bakuriu
@Bakuriu:嗯,我是包裝作家,所以我應該測試這個......它*可能*確實不能保證測試,這將是一個很好的答案。爲清晰起見編輯的問題 – Sardathrion