TDD в JavaScript: настраиваем окружение
Опубликовано:
Комментариев: 0

Настраиваем JavaScript jasmine TDD для работы через консоль.
Первым делом, нужно установить NodeJS
Заходим на nodejs.org/en/download/ и выбираем установку для своей операционной системы. Для Linux имеется возможность установки nodejs через консоль. Для этого переходим в раздел "Installing Node.js via package manager" (установка Node.js через менеджер пакетов) и выбираем свой Linux-дистрибутив. В консоли выполняем с правами администратора:curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs
По желанию: установка build-essential пакета. На сайте Node.js сказано, что если мы хотим компилировать и устанавливать нативные дополнения через npm менеджер пакетов, то нам может потребуется данный пакет:
sudo apt-get install -y build-essential
Установка NodeJS в Windows никаких проблем тоже вызвать не должна. Скачали инсталлятор и запустили установку.
Теперь нужно установить библиотеку Jasmine.
Установка Jasmine в Ubuntu Linux:sudo npm install -g jasmine
NPM - это менеджер пакетов node.js. Использование -g означает, что мы хотим установить jasmine глобально для всех проектов.
Установка в Jasmine в Windows через командную строку аналогична:
npm install -g jasmine
Далее команды будут выполняться также через командную строку от обычного пользователя. В Linux и в Windows они одинаковы.
Создаем папку, где будем тестировать проект и заходим в нее:
mkdir test
cd test
Выполняем инициализацию Jasmine:
jasmine init Видим, что создалась директория spec. Поздравляю, окружение настроено! Теперь можно проводить unit-тестирование. Чтобы посмотреть готовые примеры unit-тестов для javaScript в библиотеке Jasmite, пишем:jasmine examples
Как видим, в нашей директории test появилась новая директория lib с внутренним наполнением, а в директорию spec тоже добавились файлы.
В каталоге lib тестируемые скрипты
В каталоге spec - тесты к этим скриптам
Запустить тестирование очень просто, для этого пишем:
jasmine
Вывод консоли:
$ jasmine
Started
.....
5 specs, 0 failures
Finished in 0.014 seconds
Как видите, мы успешно провели тестирование стандартных примеров, было проведено 5 тестов и все завершились без ошибок.
Примеры стандартных заданий для TDD в javaScript
Давайте попробуем свои силы и проведем unit-тестирование на стандартных задачках. Для начала можем начать изучение с этих примеров: https://github.com/sseletskyy/TDD-Katas Читаем про задачку "String Calculator Kata" Скачать пустой конфиг для начала тестирований задачи String Calculator можем тут: https://github.com/sseletskyy/2015-11-jasmine Скачиваем, распаковываем. Нам нужны 2 директории lib и spec. Копируем их в свой каталог для тестирования у меня это stringCalc и переходим в него:cd stringCalc
Запускаем unit-тестирование:
jasmine
Тест успешно выполнен, функция StringCalc существует.
Готовый пример решения данной задачи можно подсмотреть тут:
https://github.com/sseletskyy/2015-03-jasmine-kata-01
Видео по TDD в языке javaScript:
httpv://www.youtube.com/watch?v=MPVr28UJV3w
httpv://www.youtube.com/watch?v=IaU6UAdEsjk
httpv://www.youtube.com/watch?v=E9Fmewoe5L4