相关疑难解决方法(0)

如何在Python中的对象的模拟方法中调用self?

我尝试测试一些代码,这些代码不返回任何内容,只是将结果保存到数据库中.通过模拟save方法,我希望检查事情是否已正确处理:

def mock_save(self):
    assert(self.attr, 'dest_val')
with mock.patch.object(Item, "save", create=True) as save:
    save.side_effect = mock_save
    func_to_call() //in func_to_call, I call item.save()
Run Code Online (Sandbox Code Playgroud)

但是,似乎不允许这样做.它说参数数量不匹配.

如果我做def mock_save(),它将无法正常工作.

我怎样才能引用mock方法所依据的对象呢?(我在另一个适用于init方法的线程中看到它,可以直接从类中调用)

python mocking

18
推荐指数
1
解决办法
6218
查看次数

标签 统计

mocking ×1

python ×1