Перейти к содержимому
falang.ruEN

Отладка

Визуальный отладчик позволяет остановить функцию на тестовом стенде на любом операторе, увидеть, на какой именно иконке она остановилась, и посмотреть все переменные, доступные в этой точке — так же, как в текстовой IDE, но прямо на диаграмме.

  • Кликните правой кнопкой по любому оператору (действие, лог, цикл, вызов другой функции, …) и выберите Поставить точку останова. У края иконки появится полый красный кружок.

  • Точки останова сохраняются в вашем браузере и принадлежат лично вам, а не проекту — они не экспортируются, не публикуются и не видны другим людям, работающим над тем же проектом.

  • Точку останова можно переключить в любой момент, в том числе пока сессия отладки уже идёт: кружок становится сплошным, как только сессия его подхватывает.

Нажмите Отладка на панели инструментов рядом с Запустить. Если функция принимает параметры, сначала вас попросят их указать — так же, как при обычном запуске. Если точек останова ещё нет, сессия сразу останавливается на первом операторе функции — иначе выполнение идёт до первой точки останова, на которую наткнётся.

На тестовом стенде одновременно выполняется только одно выполнение: запуск отладки останавливает то, что стенд выполнял раньше — то же правило, что уже действует для обычного запуска.

  • Иконка, на которой остановилось выполнение, подсвечивается на холсте, а вид панорамируется к ней, если она за пределами экрана.
  • Боковая панель показывает все переменные, доступные в этой точке — параметры функции, всё объявленное раньше в текущей функции, и переменные цикла, если пауза внутри него.

  • Продолжить — выполнение идёт до следующей точки останова (или до завершения функции).
  • Шаг с обходом — выполнение идёт до следующего оператора на той же глубине вызова: остановки внутри функции, вызванной с текущей строки, не будет, только после того как она вернёт управление.
  • Остановить — завершает сессию полностью.
  • Отладка работает только на тестовом (dev) стенде — опубликованная (prod) версия никогда не инструментируется, так что живой боевой workflow таким способом остановить или просмотреть нельзя.

  • Если сессия отладки долго простаивает на паузе, под тестового стенда может успеть «уснуть» (то же автоматическое усыпление, что применяется к простаивающему dev-стенду вообще). Само выполнение при этом не теряется — оно надёжно сохраняется, — но первое действие после долгой паузы может выполняться медленно, пока под просыпается.

  • Триггер-функции (запускаемые внешним событием) пока отлаживать нельзя.