Python 如何模拟基类';当它被重写时是什么方法?

Python 如何模拟基类';当它被重写时是什么方法?,python,python-2.7,python-3.x,mocking,Python,Python 2.7,Python 3.x,Mocking,我有一个类似的代码: from mock import MagicMock class Parent(object): def test_method(self, param): # do something with param pass class Child(Parent): def test_method(self, param): # do something Child-specific with param

我有一个类似的代码:

from mock import MagicMock


class Parent(object):

    def test_method(self, param):
        # do something with param
        pass


class Child(Parent):

    def test_method(self, param):
        # do something Child-specific with param
        super(Child, self).test_method(param)
现在我想确保
Child.test\u方法
调用
Parent.test\u方法
。为此,我想使用模块/库中的
assert\u调用\u once\u和
。然而,我想不出一个办法来做到这一点。如果该方法不会被子类重写,这将很容易,正如所指出的。但是,在我的情况下,这是相同的方法,那么我该怎么办?

您可以使用:


这个方法适用于超类的任何方法,不是吗?@Romain,是的,它适用于被重写和未被重写的方法,如果这是你的意思的话。
with mock.patch.object(Parent, 'test_method') as mock_method:
    child = Child()
    mock_param = mock.Mock()
    child.test_method(mock_param)
    mock_method.assert_called_with(mock_param)