在Python中的函数内部导入的修补程序类



我有:

folder/cats.py

class Cat(object):
def __init__(self, color):
self.color = color
def meow():
pass

文件夹/东西.py

def something():
from folder.cats import Cat
scootish_fold = Cat(color='Black')
scootish_fold.meow()

如何修补meow()

我试过了:

@patch('folder.something.Cat.meow')
def test_meow(self, cat_meow_patch):
cat_patch.return_value = 'MEOWW!'

但我一直在拿AttributeError

您总是可以用其原始包/模块路径修补模块/类:

@patch('folder.cats.Cat.meow')
def test_meow(self, cat_meow_patch):
cat_patch.return_value = 'MEOWW!'

最新更新