Тестируем JavaScript на Zombie.js | OTUS

Тестируем JavaScript на Zombie.js

Как правило, после написания кода его тестируют. Zombie.js — фреймворк для написания тестов, имитирующий браузер (поддерживается CSS/JS). Его можно использовать для тестирования верстки и JavaScript.

Рассмотрим пример теста, тестирующий положительный сценарий успешной регистрации на каком-нибудь воображаемом сайте. Следует учесть, что код запускается под Node.JS:

const Browser = require('zombie');

// В нашем тесте станем отправлять запросы на адрес http://example.com/signup
// но эти запросы будут обслуживаться локально установленным 
// сервером на порту 3000, имеющим адрес localhost:3000
Browser.localhost('example.com', 3000);

// describe описывает сценарий нашего теста, 
// при этом блоки describe можно вкладывать друг в друга
describe('Пользователь заходит на страницу регистрации', function() {

  // создается объект, имитирующий браузер
  const browser = new Browser();

  // Действие, выполняемое до теста — это переход на необходимую страницу
  before(function(done) {
    browser.visit('/signup', done);
  });

  describe('пользователь заполняет форму и отправляет ее', function() {

    before(function(done) {
      browser
        .fill('email',    '[email protected]')
        .fill('password', '123456')
        .fill('password-confirm', '123456')
        .pressButton('Зарегистрироваться', done);
    });

    // it описывает конкретное требование, а также код для его проверки
    it('регистрация должна быть успешной', function() {
      browser.assert.success();
    });

    it('пользователь увидит приветственное сообщение', function() {
      // Уведомление должно быть выведено в элементе с классом notification 
      // (применяется CSS-синтаксис селекторов)
      browser.assert.text('.notification', 'Вы успешно зарегистрированы');
    });
  });
});

Для установки Zombie.js вам понадобится Node.js и следующая команда:

$ npm install zombie --save-dev

Подробнее ознакомиться с Zombie.js можно на официальном сайте.

Источник

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто