JavaScript BDD: Vows & Kyuri Vs. жасмин

Я собирался пойти с Vows и Kyuri, но потом я узнал о Jasmine. Что вы рекомендуете? Обеты или жасмин? Есть ли реализация Cucumber, которая работает с Jasmine?

Ответ 1

Жасмин

Плюсы:

  • Хорошо документировано и поддерживается
  • Встроенные шпионы
  • RSPec-ish DSL
  • Хорошая интеграция с другими инструментами

Минусы:

  • Загрязнение глобального пространства имен
  • Не создан для NodeJS

Обеты

Плюсы:

  • Чистый и значимый синтаксис
  • Создано для NodeJS (т.е. асинхронное тестирование)
  • CoffeeScript (это действительно красиво)
  • Наблюдатель из коробки

Минусы:

  • Документация (например, функции отрыва)
  • Пакеты и контексты могут быть нечетными при запуске
  • Нет встроенных шпионов (SinonJS ftw)

Я бы предпочел Vows для тестирования приложений NodeJS и Jasmine для кода на стороне клиента. Как только вы привыкнете к CoffeeScript, клятвы становятся действительно чистыми и мощными.

Ответ 2

Я думаю, важно отметить, что Кюри действительно не делает то же самое, что и огурец. На самом деле это всего лишь кусок огурца. Вы можете реализовать функциональность сверху, но это не выходит из коробки.

Лично я использую клятвы. Это немного изгиб мозга, но он относительно прост и имеет синтаксис, который лучше работает с CoffeeScript, который я очень люблю. Кроме того, я действительно не хочу привлекать Ruby в мой процесс сборки, хотя ваш пробег может отличаться, и я оставляю за собой право изменить свое мнение об этом.

Ответ 3

Я думаю, что жасмин более подходит для модульного тестирования в javascript. Действительно простой и мощный, довольно простой, чтобы получить его и интегрировать с другими инструментами, такими как rake или rails.