我正在使用模拟库来修补程序中的一个类,该程序连接到外部资源并发送字典。
结构有点像这样......
代码.py
def make_connection():
connection = OriginalClass(host, port)
connection.connect()
connection.send(param)
connection.close()
测试.py
@mock.path('code.OriginalClass')
def test_connection(self, mocked_conn):
code.make_connection()
mocked_conn.assert_called_with(host, port)
mocked_conn.connect.assert_called_once()
mocked_conn.send.assert_called_with(param)
第一个 assert_call_with 工作得很好,但是对模拟类的方法的调用没有通过。我尝试过使用 patch.object 作为装饰器也没有运气。