Я нашел похожие вопросы, но они, кажется, охватывают только насмешливый MongoDB и не упоминают Flask.
У меня есть приложение Flask, и я пытаюсь протестировать его с помощью PyTest (включая PyTest)-Монго и PyTest-Flask).Однако, прежде чем я смогу приступить к написанию каких-либо тестов, мой тестовый скрипт вылетает.Сбой происходит при импорте сценария с моим приложением Flash: он пытается создать объект PyMongo без URL-адреса.
Мой вопрос таков: как я могу убедиться, что PyMongo корректно проверяется на этом этапе?Согласно документации PyTest-Mongo тестовое устройство MongoDB должно быть передано каждой из функций теста, но это не помогает мне, если он падает при импорте.
test_app.py:
import pytest
import pytest_mongodb
from app import app
@pytest.fixture
def client():
app.config['TESTING'] = True
return client
app.py:
import ...
app = Flask(__name__)
app.config["MONGO_DBNAME"] = os.environ.get('DB_NAME')
app.config["MONGO_URI"] = os.environ.get('MONGO_URI')
app.secret_key = os.environ.get('SECRET')
mongo = PyMongo(app)
...
if __name__ == '__main__':
app.run(host=os.environ.get('IP'),
port=int(os.environ.get('PORT')),
debug=False)