我围绕Cassandra驱动程序模块编写了一个包装器类,我正在为它编写单元测试。我可以单元测试是否调用了类的特定方法(例如connect
)。然而,断言这一点是不够的。我想确保在实例化类时传递给包装器方法(即open_session
)的参数是我期望的参数
在调用任何方法之前,如何对类的实例化进行单元测试
我的包装器类:
from cassandra.cluster import Cluster
class CassandraWrapper(object):
def __init__(self, hosts, port):
self.session = self.open_session(hosts, port)
def open_session(self, hosts, port):
cluster = Cluster(contact_points=hosts, port=port)
return cluster.connect()
我的单元测试:
from cassandra_wrapper import CassandraWrapper
from unittest.mock import patch
import unittest
class TestCassandraWrapper(unittest.TestCase):
@patch('cassandra.cluster.Cluster.connect')
def test_open_session(self, connect_mock):
cw = CassandraWrapper(['localhost'], 9042)
connect_mock.assert_called_once()
目前没有回答
相关问题 更多 >
编程相关推荐