РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
26 of 643 menu

Метод test_cli_runner

Метод test_cli_runner применяется к приложению Flask и возвращает объект FlaskCliRunner, который позволяет вызывать CLI-команды приложения без запуска реального сервера. Это особенно полезно при написании тестов для пользовательских команд, зарегистрированных через app.cli. Метод не принимает обязательных параметров и может использоваться внутри тестовых функций.

Синтаксис

app.test_cli_runner()

Пример

Давайте создадим простое приложение с пользовательской CLI-командой и вызовем её через test_cli_runner:

from flask import Flask app = Flask(__name__) @app.cli.command('hello') def hello_command(): print('hello') runner = app.test_cli_runner() res = runner.invoke(args=['hello']) print(res.output)

Результат выполнения кода:

"hello\n"

Пример

Давайте передадим аргумент в CLI-команду и проверим код возврата:

from flask import Flask app = Flask(__name__) @app.cli.command('greet') def greet_command(): print('abcde') runner = app.test_cli_runner() res = runner.invoke(args=['greet']) print(res.exit_code) print(res.output)

Результат выполнения кода:

0 "abcde\n"

Пример

Давайте проверим обработку исключения внутри CLI-команды:

from flask import Flask app = Flask(__name__) @app.cli.command('fail') def fail_command(): raise ValueError('user error') runner = app.test_cli_runner() res = runner.invoke(args=['fail']) print(res.exit_code) print(res.exception)

Результат выполнения кода:

1 ValueError('user error')

Смотрите также

  • метод test_client,
    который создаёт тестовый HTTP-клиент приложения
  • метод test_request_context,
    который создаёт тестовый контекст запроса
  • атрибут cli,
    который хранит группу CLI-команд приложения
  • метод run,
    который запускает приложение Flask
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить