2009-11-23 1 views
4

Я разрабатываю большое приложение с использованием рамки ExtJS. Поскольку он растет слишком быстро, я понял, что настало время начать тесты.Какую структуру BDD для JavaScript вы используете?

Я хочу использовать технику BDD, я нашел несколько фреймворков BDD для JavaScript вокруг (Screw.Unit, JSpec, JSSpec), но я все еще не уверен, какой из них выбрать. Есть несколько статей по этой теме, но меня больше интересуют ваши собственные опыты/предложения.

Так что мои вопросы:

  • Какой из них вы используете и почему?
  • Любые другие подсказки/подсказки приветствуются.
  • Вы используете Selenium наряду с тестированием BDD?
  • Вы используете какую-либо другую технику?

ответ

1

Мы используем Selenium, да.

Я написал блок тестирования модулей (ну, большинство из них, функциональный, не полностью подключаемый), который я использовал несколько раз. Такие темы продолжаются, поэтому, возможно, я должен закончить его ... url is http://code.google.com/p/jasproject/

+0

Спасибо, я обязательно проверю. –

0

Я использую buster.js, потому что я развиваюсь в node.js, а также на стороне клиента javascript. Он справляется с обоими сценариями, используя один API. Документации по-прежнему не хватает, но мне очень нравится поддержка асинхронного тестирования.

Buster также можно использовать аналогично WebDriver Selenium - вы можете подчинить различные браузеры «серверу» и запустить ваши тесты во всех этих браузерах одновременно.

0

Функциональное веб-тестирование имеет несколько задач. Тесты, как правило, ...

  1. Slow для запуска (запросы HTTP медленно, дом обхода может быть медленным, тоже)
  2. Slow писать (написать тест, запустить приложение, запустить тест, понять, что вы сделали ошибку, начните заново)
  3. Трудно читать (XPaths, CSS селекторы и т.д.)
  4. хрупких (когда тесно связанно с вашей HTML)
  5. Дорого поддерживать (если вы не используете слой абстракции, такие как шаблон страницы объекта)
  6. Нереалистично (при запуске в поддельном браузере)

По этим причинам мой любимый стек

  1. JavaScript - время разработки очень быстро, так как нет времени компиляции
  2. CasperJS или Zombie JS - очень быстрый, на основе WebKit (Safari & Chrome [сейчас ])
  3. Yadda для истинного BDD - делает тест легко читать и обеспечивает уровень абстракции, смягчая хрупкость и обслуживание

Downsides этого пакета является то, что вы только тестирование в WebKit, а не Firefox, IE или Chrome (когда Google перейти на Blink)

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

  • Нет связанных вопросов^_^