Я собирался пойти с Vows и Kyuri, но потом я узнал о Jasmine. Что вы рекомендуете? Обеты или жасмин? Есть ли реализация Cucumber, которая работает с Jasmine?
JavaScript BDD: Vows & Kyuri Vs. жасмин
Ответ 1
Жасмин
Плюсы:
- Хорошо документировано и поддерживается
- Встроенные шпионы
- RSPec-ish DSL
- Хорошая интеграция с другими инструментами
Минусы:
- Загрязнение глобального пространства имен
- Не создан для NodeJS
Обеты
Плюсы:
- Чистый и значимый синтаксис
- Создано для NodeJS (т.е. асинхронное тестирование)
- CoffeeScript (это действительно красиво)
- Наблюдатель из коробки
Минусы:
- Документация (например, функции отрыва)
- Пакеты и контексты могут быть нечетными при запуске
- Нет встроенных шпионов (SinonJS ftw)
Я бы предпочел Vows для тестирования приложений NodeJS и Jasmine для кода на стороне клиента. Как только вы привыкнете к CoffeeScript, клятвы становятся действительно чистыми и мощными.
Ответ 2
Я думаю, важно отметить, что Кюри действительно не делает то же самое, что и огурец. На самом деле это всего лишь кусок огурца. Вы можете реализовать функциональность сверху, но это не выходит из коробки.
Лично я использую клятвы. Это немного изгиб мозга, но он относительно прост и имеет синтаксис, который лучше работает с CoffeeScript, который я очень люблю. Кроме того, я действительно не хочу привлекать Ruby в мой процесс сборки, хотя ваш пробег может отличаться, и я оставляю за собой право изменить свое мнение об этом.
Ответ 3
Я думаю, что жасмин более подходит для модульного тестирования в javascript. Действительно простой и мощный, довольно простой, чтобы получить его и интегрировать с другими инструментами, такими как rake или rails.