Я изучил и рассмотрел множество модульных тестов JavaScript и инструментов тестирования, но не смог найти подходящий вариант, чтобы оставаться полностью совместимым с TDD. Итак, есть ли инструмент модульного тестирования JavaScript, полностью совместимый с TDD?
MochiKit имеет среду тестирования под названием SimpleTest, который, кажется, завоевал популярность. Вот сообщение в блоге от исходного автора .
YUI имеет среда тестирования также. Это видео из Театра Yahoo! является хорошим введением, хотя существует много основ о TDD впереди.
Эта платформа универсальна и может быть выполнена против любой библиотеки JavaScript или JS.
Смотрите на платформа модульного теста Ремня безопасности объекта Dojo (DOH) , который является в значительной степени платформой независимый ремень безопасности для поблочного тестирования JavaScript и не имеет никаких зависимостей от Dojo. Существует очень хорошее описание его в приложения Web 2.0 Поблочного тестирования с помощью Ремня безопасности Цели Dojo .
, Если Вы хотите автоматизировать тестирование UI (больной вопрос многих разработчиков) — выезд doh.robot (временный вниз. обновление: другая ссылка http://dojotoolkit.org/reference-guide/util/dohrobot.html ) и dijit.robotx (временный вниз) . Последний разработан для приемочных испытаний. Обновление:
статьи, на которые Ссылаются, объясняют, как использовать их, как эмулировать пользователя, взаимодействующего с Вашим UI с помощью мыши и/или клавиатуры, и как записать сессию тестирования, таким образом, можно "играть" его позже автоматически.
Вы могли бы также интересоваться платформой поблочного тестирования, которая является частью qooxdoo, платформа RIA с открытым исходным кодом, подобная Dojo, ExtJS, и т.д. но с вполне всесторонним набором инструментальных средств.
Попытка интерактивная версия testrunner. Подсказка: совершите нападки серая стрелка, наверху покинутая (должен больше делаться ясным). Это - кнопка "игры", которая запускает выбранные тесты.
Для обнаружения больше о классах JS, которые позволяют Вам определить свои модульные тесты посмотрите онлайн средство просмотра API .
Для автоматизированного тестирования UI (на основе RC Селена), проверьте Средство моделирования проект.
Вы имеете, "работает на фактическом браузере" как на про, но по моему опыту который является доводом "против", потому что это медленно. Но то, что делает его ценным, является отсутствием достаточной эмуляции JS от альтернатив небраузера. Могло случиться так, что, если Ваш JS достаточно сложен, что только в тесте браузера будет достаточен, но существует пара большего количества опций рассмотреть:
HtmlUnit: "Это имеет довольно хорошую поддержку JavaScript (который постоянно улучшается), и в состоянии работать даже с довольно сложными библиотеками AJAX, моделируя или Firefox или Internet Explorer в зависимости от конфигурации, которую Вы хотите использовать". Если его эмуляция будет достаточно хороша для Вашего использования тогда, то это будет намного быстрее, чем управление браузером.
, Но возможно HtmlUnit имеет достаточно хорошую поддержку JS, но Вам не нравится Java? Тогда, возможно:
Быстрота : API Watir, работающий на JRuby, поддержанном HtmlUnit.
или так же
Schnell: другая обертка JRuby HtmlUnit.
, Конечно, если HtmlUnit не достаточно хорош и необходимо управлять браузером тогда, Вы могли бы полагать Watir управлять своим JS.