Если вы работаете с несколькими базами данных, вы можете использовать полиморфизм или в зависимости от сходства API сделать конкретную БД параметром конструктора для вашего объекта.

ользую клиентскую библиотеку pymysql для подключения к реальной базе данных. У меня есть функция в модуле, где я подключаюсь к базе данных с помощью pymysql и выполняю только операции вставки базы данных. Как выполнить модульное тестирование этой функции в python, не затрагивая реальную базу данных?

import pymysql

def connectDB(self):

# Connect to the database
connection = pymysql.connect(host='localhost',
                             user='user',
                             password='passwd',
                             db='db')

try:
    with connection.cursor() as cursor:
        # Create a new record
        sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
        cursor.execute(sql, ('[email protected]', 'newpassword'))


    connection.commit()

Моя версия Python 2.7.

Ответы на вопрос(3)

Ваш ответ на вопрос