久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何在 Python 中對象的模擬方法中調用 self?

How to call self in a mock method of an object in Python?(如何在 Python 中對象的模擬方法中調用 self?)
本文介紹了如何在 Python 中對象的模擬方法中調用 self?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我嘗試測試一些不返回任何內容但將結果保存到數據庫的代碼.通過模擬 save 方法,我希望檢查事情是否已正確處理:

I try to test some codes which don't return anything but save the result to the DB. By mocking the save method, I wish to check whether things have been processed correctly:

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()

但是,這似乎是不允許的.它表示參數的數量不匹配.

However, it seems that this is not allowed. It says that the number of argument mismatch.

如果我執行 def mock_save(),它將不起作用.

If I do def mock_save(), it won't work.

我如何才能引用模擬方法所作用的對象?(我在另一個適用于 __init__ 方法的線程中看到它可以直接從類中調用).

How can I have a reference to the object which the mock method act upon too? (I saw it in another thread that is applicable to __init__ method which can be called directly from the class).

推薦答案

你需要 autospec=True

def mock_save(self):
    assert self.attr == 'dest_val'
with mock.patch.object(Item, "save", autospec=True) as save:
    save.side_effect = mock_save
    func_to_call()

這篇關于如何在 Python 中對象的模擬方法中調用 self?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

How should I verify a log message when testing Python code under nose?(在鼻子下測試 Python 代碼時,我應該如何驗證日志消息?)
Patch __call__ of a function(修補函數的 __call__)
Mocking only a single method on an object(僅模擬對象上的單個方法)
Mocking a subprocess call in Python(在 Python 中模擬子進程調用)
Checking call order across multiple mocks(檢查多個模擬的調用順序)
How to properly use mock in python with unittest setUp(如何通過 unittest setUp 在 python 中正確使用 mock)
主站蜘蛛池模板: 91精品一区二区三区久久久久久 | 特黄视频| 精品日韩一区 | 91久久久久久久久久久久久 | 国产精品亚洲第一 | 国产电影一区二区在线观看 | www.99热.com| 美女黄频| 日日夜夜免费精品视频 | 午夜av一区二区 | 可以在线观看av的网站 | 国产成人综合久久 | 久久精品福利视频 | 日韩成人av在线播放 | 青青草免费在线视频 | 日韩欧美视频网站 | 亚洲在线一区 | 久久国产精品-国产精品 | 国产精品中文字幕在线播放 | 中文字幕视频一区 | 久久精品在线 | 91在线观看视频 | 欧美在线视频a | 国产jizz女人多喷水99 | 久久免费福利 | а_天堂中文最新版地址 | 中文字幕亚洲欧美 | 日日骚视频 | 特黄特色大片免费视频观看 | 久久久久国产一区二区三区四区 | 麻豆精品久久 | 九九综合九九 | 性色视频| 精品一区二区三区中文字幕 | 在线观看av网站永久 | 国产一区免费 | 精品无码三级在线观看视频 | 国精日本亚洲欧州国产中文久久 | 成人深夜福利在线观看 | 91精品国产乱码久久久久久久久 | 国产精品一区在线观看 |