久久久久久久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)
主站蜘蛛池模板: 亚洲a在线观看 | 日本中文字幕一区 | 特黄色毛片 | 在线观看中文字幕 | 99pao成人国产永久免费视频 | 电影在线 | 欧美激情视频一区二区三区免费 | 亚洲精品美女视频 | 日韩精品一区二 | 国产精品国产a级 | 国产成人精品一区二区三 | 一级做a毛片 | 国产精品久久久久一区二区三区 | 国产精品久久久久久久久图文区 | 91久久夜色精品国产网站 | 成人精品鲁一区一区二区 | 国产精品欧美一区二区 | 国产高清在线观看 | 欧美激情综合 | 亚洲精品在线看 | 久久久精品网 | 久久久久免费精品国产 | 亚洲福利在线观看 | 精品国产区 | 99久久国产综合精品麻豆 | 久久久青草 | 精品伊人久久 | 狠狠色综合网站久久久久久久 | 久久精品国产久精国产 | 99热国产免费 | 亚州综合在线 | 精品国产18久久久久久二百 | 99热这里只有精品8 激情毛片 | 人人干人人干人人干 | 婷婷国产一区二区三区 | 欧美激情 亚洲 | 91在线观看网址 | 日日爱视频 | 日韩中文字幕免费在线观看 | gav成人免费播放视频 | 久草a√|