Описание тега zombie.js

Zombie.js - это легкая платформа для тестирования клиентского кода JavaScript в моделируемой среде. Браузер не требуется.

Zombie.js- это легкая платформа для тестирования клиентского кода JavaScript в моделируемой среде. Браузер не требуется.

const Browser = require('zombie');

// We're going to make requests to http://example.com/signup
// Which will be routed to our test server localhost:3000
Browser.localhost('example.com', 3000);

describe('User visits signup page', function() {

    const browser = new Browser();

    before(function(done) {
        browser.visit('/signup', done);
    });

    describe('submits form', function() {

        before(function(done) {
            browser
                .fill('email',    'zombie@underworld.dead')
                .fill('password', 'eat-the-living')
                .pressButton('Sign Me Up!', done);
        });

        it('should be successful', function() {
            browser.assert.success();
        });

        it('should see welcome page', function() {
            browser.assert.text('title', 'Welcome To Brains Depot');
        });
    });
});

В этом примере используется среда тестирования Mocha, но Zombie будет работать с другими средами тестирования. Поскольку Mocha поддерживает обещания, мы также можем написать такой тест:

const Browser = require('zombie');

// We're going to make requests to http://example.com/signup
// Which will be routed to our test server localhost:3000
Browser.localhost('example.com', 3000);

describe('User visits signup page', function() {
    const browser = new Browser();

    before(function() {
        return browser.visit('/signup');
    });

    describe('submits form', function() {

        before(function() {
            browser
              .fill('email',    'zombie@underworld.dead')
              .fill('password', 'eat-the-living');
            return browser.pressButton('Sign Me Up!');
        });

        it('should be successful', function() {
            browser.assert.success();
        });

        it('should see welcome page', function() {
            browser.assert.text('title', 'Welcome To Brains Depot');
        });
    });
});

Сайт проекта с полной документацией