是否可以标识子模拟对象实例的父级^{
>>> from unittest.mock import MagicMock
>>> parent_mock = MagicMock()
>>> child_mock1 = parent_mock(a=1)
>>> child_mock2 = parent_mock(b='spam')
我以后如何确认调用parent_mock
生成了子模拟?如何检查parent_mock
生成了哪些模拟对象?在
另外,我如何区分child_mock1
来自调用parent_mock(a=1)
,而{
我知道一个人可以manually attach mocks as attributes of other mocks,但是,它需要大量的设置,因为您需要确保显式定义父mock的返回调用,以便它返回指定的子mock,因此它不能扩展到几个调用之后。在
小心点!在
26.4.2.1. Calling
如果你想让不同的调用得到不同的结果,你需要给你的模拟一个^{} 属性。如果
mock.side_effect
是一个函数,那么mock(*args, **kwargs)
将调用mock.side_effect(*args, **kwargs)
并返回返回的任何内容。您可以让您的自定义mock.side_effect
跟踪哪些调用产生了什么值。在好吧,有一个未记录的属性
_mock_new_parent
,可以这样使用它。。。在……但你所有其他问题的答案似乎都是“你不能”。在
我想你可以用这样的方法子类
^{pr2}$MagicMock
来跟踪它的子类。。。在…那你就可以。。。在
相关问题 更多 >
编程相关推荐