Python 单元测试:确保已调用补丁 class
Python Unittest: make sure patched class is called
我有以下代码
@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest():
@data([val1, val2])
@unpack
def test_run(self, val1, val2):
ClassA().run(val1, val2)
如何断言 mymodule.myclass
中的一些方法被调用?
当您在 class 级别对其进行修补时,您会在测试方法中获得对模拟的引用作为参数,例如:
@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest():
@data([val1, val2])
@unpack
def test_run(self, val1, val2, my_class_mock):
# use my_class_mock
您可以将此模拟用于多种用途,但在这种情况下,您仍然需要在测试方法中修补 class 以进行断言。
我有以下代码
@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest():
@data([val1, val2])
@unpack
def test_run(self, val1, val2):
ClassA().run(val1, val2)
如何断言 mymodule.myclass
中的一些方法被调用?
当您在 class 级别对其进行修补时,您会在测试方法中获得对模拟的引用作为参数,例如:
@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest():
@data([val1, val2])
@unpack
def test_run(self, val1, val2, my_class_mock):
# use my_class_mock
您可以将此模拟用于多种用途,但在这种情况下,您仍然需要在测试方法中修补 class 以进行断言。