Python单元测试中的模拟对象使用指南
1. 模拟对象与 @patch 装饰器基础
在Python单元测试中,模拟对象(Mock)和 @patch 装饰器是非常有用的工具。模拟对象可以用来替代真实的函数或类,从而在测试中隔离依赖,确保测试的独立性和可重复性。 @patch 装饰器的主要用途是替换测试对象导入的函数或类,使测试对象导入模拟对象而非真实依赖。
例如,在测试中替换 geom2d 包的 circles 模块中定义的 make_circle_from_points 函数时,需要将模拟函数 make_circle_mock 作为参数传递给测试函数。在测试函数的上下文中,可以引用模拟函数并进行断言,就像对其他模拟对象一样。
# 示例代码,模拟函数调用
from unittest.mock import patch, Mock
@patch('geom2d.circles.make_circle_from_points')
def test_something(make_circle_mock):
# 调用被测试的函数
# ...
make_circle_mock.assert_called_once()
2. 测试 StructureSolution 类
接下来,我们将通过测试
订阅专栏 解锁全文
460



被折叠的 条评论
为什么被折叠?



