2015-04-09 5 views
2

У меня есть экспресс-веб-приложение api, использующее sequelize, которое я хочу выполнить от конца до конца. Я хочу иметь возможность делать сквозное тестирование с помощью базы данных в памяти, поэтому я могу запускать ее на любом компьютере, который мне нравится.Интеграционные тесты с Sequelize

Я использую базу данных mysql для разработки и производства, однако я думал об использовании базы данных sqlite в памяти для тестирования, но я не уверен, что лучший способ - получить в нее тестовые данные.

Существует несколько модулей, таких как squelize-fixtures, но ни один из них, похоже, не может просто заполнить базу данных данными без необходимости писать код вокруг нее, чтобы манипулировать и вставлять его.

Кто-нибудь здесь делает интеграционные тесты с sequelize и sqlite, которые придумали хороший способ сделать это без всего кода шаблона?

ответ

2

Если вы протестируете этот путь, это будет фактически не сквозное тестирование, так как вы используете другую базу данных.

Однако, что не так с изменением диалекта Sequelize на sqlite, а затем с использованием сиквели-светильников для глотания файла ваших данных? Если вы считаете, что это слишком обременительно, вы можете пробиться через него один раз, а затем просто сохранить файл sqlite db для будущего использования. Вы бы затем создать экземпляр объекта Sequelize с

storage: 'path/to/database.sqlite' 

Независимо от того, что вы делаете или то, что для хранения вы выбрали, вы будете иметь, чтобы сделать некоторую работу потомству базы данных.

Смежные вопросы