5
我正在使用模擬從具有特定返回值的類中替換方法。它工作的很好,也許有點太好......我這樣做(見下文),但在下一個測試課程中,我重複使用密碼類而不嘲笑,放在該測試中的模擬仍然有效。Python取消方法模擬
from utils import password as pass_helper
class TestPassword(unittest.TestCase):
def setUp(self):
self.username = "user"
self.password = "Test_1234_pass"
pass_helper._get_password_from_keyboard = Mock(return_value=self.password)
def test_password(self):
password = pass_helper._get_password_from_keyboard(self.username)
self.assertEqual(password, self.password)
我試着通過做這樣的事情來取消TearDown方法中的模擬,但它不起作用。
pass_helper._get_password_from_keyboard = pass_helper._get_password_from_keyboard
如何恢復類方法的原始功能?
似乎要解決我的問題,謝謝! :) – Amaranth
我這樣做後,我得到'unbound方法xxx必須用xxx實例作爲第一個參數調用(代替int)' –