我在下面有一个测试用例:
class Foo(unittest.TestCase):
@staticmethod
def my_method():
...
def test_01(self):
with patch.object(bar, 'method_to_be_mocked', side_effect=Foo.my_method):
test_stuff()
def test_02(self):
with patch.object(bar, 'method_to_be_mocked', side_effect=Foo.my_method):
test_stuff()
... ...
def test_10(self):
with patch.object(bar, 'method_to_be_mocked', side_effect=Foo.my_method):
test_stuff()
基本上我使用Foo.my_method来模拟method_to_be_mocked
以上工作正常,但是你可以看到我有10个这样的测试用例而且我不想写&#34 ;与patch.object ..."十次。因此我想使用装饰器并执行以下操作:
@patch.object(bar, 'method_to_be_mocked', side_effect=Foo.my_method):
class Foo(unittest.TestCase):
@staticmethod
def my_method():
...
def test_01(self):
test_stuff()
def test_02(self):
test_stuff()
... ...
def test_10(self):
test_stuff()
但是它告诉我Foo
没有定义?