有沒有辦法在Python中知道從unittest執行或調試運行的上下文中調用函數?Python:知道函數是從unittest調用的?
對於上下文,我試圖對使用函數執行數據庫調用的代碼進行單元測試。爲了避免在該函數測試期間調用數據庫(分別測試數據庫調用),我試圖讓數據庫IO功能知道它們的環境,並模擬它們在單元測試中被調用並在調試過程中記錄附加變量跑。
我目前的看法是讀取/寫入環境變量,但它似乎有點矯枉過正,我認爲Python必須有一個更好的機制。
編輯: 這是一個功能我想單元測試的例子:
from Database_IO import Database_read
def some_function(significance_level, time_range)
data = Database_read(time_range)
significant_data = data > significance_level
return significant_data
你能不能注入模擬?你有點試圖向後做,這可能是你的代碼設計不正確的一個標誌。 –
你應該在你的測試/測試框架中模擬數據庫調用。這使您的應用程序代碼保持清潔 –
但是,如果對數據庫IO功能的調用在我願意測試的函數內,我該怎麼做? – chiffa