【发布时间】:2013-08-06 10:12:35
【问题描述】:
我在 Anaconda 环境下使用 Python 3.3。
我想模拟 sqlite3.connect。例如在MyTests(见下文)中,我希望test_sqlite3_connect 返回字符串connection,而不是实际的sqlite3.Connection 对象。
我试过修补它,但不起作用。
from unittest.mock import patch
import unittest
import sqlite3
@patch('sqlite3.connect')
def sqlite3_connect(self,connection_string):
print('connect with : {0}'.format(connection_string))
return 'connection '
class MyTests(unittest.TestCase):
def test_sqlite3_connect(self):
print('testing connection')
dbc = DataBaseClass()
class DataBaseClass():
def __init__(self):
print('initialising database class')
self.connection = sqlite3.connect('test database')
【问题讨论】:
标签: unit-testing python-3.x anaconda