Ответ 1
Если вы хотите сделать запрос к вашему приложению, используйте test_client
.
c = app.test_client()
response = c.get('/test/url')
# test response
Если вы хотите протестировать код, который использует контекст приложения (current_app
, g
, url_for
), нажмите app_context
.
with app.app_context():
# test your app context code
Если вам нужен тестовый код, который использует контекст запроса (request
, session
), нажмите test_request_context
.
with current_app.test_request_context():
# test your request context code
Оба контекста приложения и запроса также могут быть перенесены вручную, что полезно при использовании интерпретатора.
>>> ctx = app.app_context()
>>> ctx.push()
Flask- Script или новый Flask cli автоматически будет использовать контекст приложения при запуске команды shell
.
Flask-Testing
- полезная библиотека, содержащая помощники для тестирования приложений Flask.