Как создать юнит-тест в колбе, которая использует flask_mysqldb? - PullRequest
0 голосов
/ 12 мая 2019

Я читаю учебник здесь

Но этот учебник использует sqlalchemy следующим образом:

from datetime import datetime, timedelta
import unittest
from app import app, db
from app.models import User, Post

class UserModelCase(unittest.TestCase):
    def setUp(self):
        app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite://'
        db.create_all()

    def tearDown(self):
        db.session.remove()
        db.drop_all()

на самом деле, я уже написал веб-приложение, которое использует from flask_mysqldb import MySQL

__init__.py в руководстве выглядит так:

from flask import Flask
from config import Config
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate

app = Flask(__name__)
app.config.from_object(Config)
db = SQLAlchemy(app)
migrate = Migrate(app, db)

from app import routes, models

У меня есть mysql=MySQL(app) в моем собственном __init__.py

можно ли заменить db на mysql в первой части кода для тестирования моего приложения?

а как же app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite://'?

Я не использовал sqlalchemy, просто используй flask_mysqldb

1 Ответ

0 голосов
/ 13 мая 2019

Sol:

использование testing.mysqld module

здесь

Ссылка: Макет базы данных MySQL в Python

...