Правильный способ проверить приложения Foxx в Arangodb
Вопрос
Я хотел бы знать, что должно быть подходящим способом тестирования приложений FOXX в Arangodb.Моя структура проекта (упрощенная) - это что-то вроде следующего:
/frontend /* AngularJS webapp */
/backend /* Foxx controllers, models and repositories */
manifest.json
.
Для интерфейса я использую карму / жасмин с успехом, но у меня проблемы при попытке проверить контроллеры Foxx.
Более конкретно, то, что я хотел бы достичь, - это тестирование некоторых конечных точек и проверить, что они делают то, что они предназначены, в основном, Crud Operations.Для этого мне было бы действительно необходимо получить доступ к экземпляру Arangodb по нескольким причинам: очистить тестовую базу данных, препорочить ее тестированию данных и т. Д.
Какой должен идти в этом случае?Это даже возможно?
Решение
Есть два способа обработки этого:
- сделать полный стек HTTP API-тест приложения Foxx
- Дополнительные тесты различных частей приложения Foxx
Первое, что возможно, и я уже сделал это для приложений Foxx.Я бы предложил сделать это, поскольку API - это контракт между вашим интерфейсом и бэкэндом.Я думаю, что это также ближе к тому, что вы описали.
Во-вторых, во-вторых, сейчас на самом деле невозможно, но команда Foxx работает над этим, и в ближайшем будущем будет возможно.
Для теста на веб-API я лично использую огурец с помощью драйвера Ruby Ashikawa :: Core Для усечения коллекций перед запуском тестового набора.Однако можно проверить API в любых тестовых рамках, которые вам нравятся, если вы сочетаете его с помощью клиента HTTP.