我嘗試測試一些不返回任何內容但將結果保存到數據庫的代碼。通過嘲諷的保存方法,我想檢查是否東西都被正確處理:如何在Python中用對象的模擬方法調用self?
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()
但是,似乎這是不允許的。它表示參數不匹配的數量。
如果我做了def mock_save(),它將不起作用。
我該如何參考模擬方法所執行的對象呢? (我看到它在另一個線程這是適用於初始化方法,它可以直接從類中調用)