Рабочий процесс отладки приложений Foxx?

Каков рекомендуемый рабочий процесс для отладки приложений Foxx?

В настоящее время я работаю над довольно большим приложением, и мне кажется, что я делаю что-то не так, потому что то, как я работаю, вообще не представляется возможным:

  1. Внесите изменения в приложение Foxx (например, новые конечные точки).
  2. Загрузите свое приложение foxx в ArangoDB.
  3. Проверьте свои изменения (например, вызовите вызовы API).
  4. Проверьте журналы, чтобы увидеть, что-то пошло не так.
  5. Перейти к 1.

2 ответа

Я ощутил значительную экономию времени, перенеся большую часть рабочего процесса разработки на клиент терминала "arangosh". Особенно при отладке более сложных конечных точек, вы можете изолировать запросы и функции и отлаживать каждый из них по отдельности в терминале. Закончив отладку, вы объединяете свой код в приложении Foxx и монтируете его. Требуйте модули, как в Foxx, просто введите переменные в качестве аргументов для ваших функций или запросов.

Вы можете использовать arangosh либо непосредственно из терминала, либо через встроенный терминал в интерфейсе Arangodb.

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

При разработке приложения Foxx я бы предложил использовать режим разработки. Это также очень помогает при отладке, поскольку у вас более быстрая обратная связь. Это работает следующим образом:

  1. Начните arangod с опцией dev-app-path как это: arangod --javascript.dev-app-path /PATH/TO/FOXX_APPS /PATH/TO/DBгде путь к приложениям foxx - это папка, содержащая папку базы данных, в которой находятся ваши приложения foxx, отсортированные по базе данных. Более подробную информацию можно найти здесь.
  2. Вносите изменения, не нужно развертывать приложение или что-то еще. Приложение теперь автоматически перезагружается при каждом запросе. Изменить, попробовать, изменить попробовать...

Там в настоящее время нет возможности отладки. Мы планируем добавить больше поддержки для модульного тестирования приложений Foxx в ближайшем будущем, чтобы вы могли иметь более TDD-подобный рабочий процесс.

Другие вопросы по тегам