0
當時我想測試代碼的頂部我有一個像進口:Python的 - 模擬輸入字典
from resources import RESOURCES
其中RESOURCES
是值的字典。
如何在測試中嘲笑它?
我想要的是,無論在真正的模塊中是什麼,都會返回一個衆所周知的字典。
例如,在一個測試中,我想RESOURCES
是:
{
'foo': 'bar'
}
而在另一個測試中,我希望它是:
{
'something': 'else'
}
你是什麼意思「模擬它」? –
你需要「嘲笑」它有多好。你需要測試模塊是否存在,你是否需要僞造該模塊?你只需要一個'RESOURCES'定義,還是你需要'sys.modules'中的假條目? –
您可以添加一個本地(即相同的目錄)模塊'resources.py',其中包含您的模擬'RESOURCES'字典。或者您可以將該模塊放置在其他位置,並將相應的路徑預先添加到'sys.path':'sys.path.insert(0,'/ path/to/resources /')'。 –