модульное тестирование модульного JavaScript - PullRequest
7 голосов
/ 14 сентября 2011

В настоящее время я выводю шаблон фреймворка javascript в качестве архитектуры для разработки на стороне клиента для предстоящего крупномасштабного приложения, которое я буду разрабатывать.

Я собираюсь использовать шаблон наблюдателя модуля, в котором каждый разрабатываемый мной элемент управления будет иметь свой собственный файл javascript, не содержащий сведений о других элементах управления.

При разработке этого фреймворка для моего приложения я стремлюсь интегрировать в механизм тестирования моих модулей - механизм модульного тестирования для javascript. Я не знаю ни о каких таких структурах или как я могу настроить такие. Есть предложения?

В рамках такого тестирования мне также потребуется макетировать http-запросы.

Библиотека, которую я буду использовать в разработке, - это jquery.

Ответы [ 4 ]

7 голосов
/ 14 сентября 2011

Команда JQuery имеет QUnit .

Что касается абстрагирования AJAX, вы должны соответствующим образом обернуть его или просто протестировать методы манипуляции данными.

1 голос
/ 14 сентября 2011

Попробуйте использовать JsTestDriver для запуска ваших JS-тестов. Основное преимущество, которое он предоставляет - он может запускать ваши тесты в среде непрерывной интеграции, что очень важно для практики модульного тестирования.

Некоторые дополнительные функции:

  1. Может использоваться вместе с QUnit и другими системами тестирования.
  2. Он может выполнять ваши тесты параллельно через несколько браузеров.
  3. Поддерживает покрытие кода расчета.

Список библиотек насмешек, которые вы можете найти в другом потоке .

1 голос
/ 14 сентября 2011

Жасмин может быть то, что вы ищете. Он имеет встроенную поддержку макета и не зависит от каких-либо других платформ.

У них также есть отдельный модуль для фальсификации ответов AJAX.

Настройка проста. Просто загрузите автономную версию, напишите несколько тестовых пакетов и просмотрите SpecRunner.html в браузере.

0 голосов
/ 04 сентября 2012

BoilerplateJS является эталонной архитектурой для крупномасштабной разработки продуктов JavaScript. Вы можете найти тесты, написанные с использованием qunit, sinon и testr, включенные в папку tests.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...