我的课程有以下代码段。
class Sql_Workflow_Connector():
def __init__(self, server, database, username, password, sql_driver):
self.server = server
self.database = database
self.username = username
self.password = password
self.conn = pyodbc.connect(driver=sql_driver, server=self.server,
port=1433, database=self.database, uid=self.username, pwd=self.password)
self.cursor = self.conn.cursor()
我想为此使用pytest开始单元测试。
我需要模拟连接和游标。 我该怎么做呢?我想测试 init ,以下使用模拟连接和游标调用sql函数。
目前我的实现方式是
答案 0 :(得分:1)
是否有可以使用 pytest 实施的解决方案?这样适合您的情况吗?
@pytest.fixture(autouse=True)
def _mock_db_connection(mocker, db_connection):
mocker.patch('db.database.dbc', db_connection)
return True
我从这里获取了此解决方案:Pytest mock db connection