【发布时间】:2020-06-24 14:13:32
【问题描述】:
让我举个例子:
class Devices:
the_dict = {'apple': some_class(), 'android': some_class()}
在这个例子中,我想修补 some_class()。
我无法模拟类本身(在本例中为 Devices),因为那将是我首先要测试的类。
我已尝试通过修补字典本身来解决此问题,但模拟无法识别不同键和值之间的差异。例如,假设我创建了一个名为 mocked_dict 的模拟,测试看不出 mocked_dict['alpha'] 和 mocked_dict[' 之间的区别测试版']。我也尝试过 patch.dict,但无济于事。我只在使用 return_value 时收到属性错误。
非常感谢任何帮助。谢谢!
【问题讨论】:
标签: python unit-testing dictionary mocking patch