0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Теги: javascript, автоматизация, zombie.js</p>
1
<p>Теги: javascript, автоматизация, zombie.js</p>
2
<p>Как правило, после написания кода его тестируют.<strong>Zombie.js</strong>- фреймворк для написания тестов, имитирующий браузер (поддерживается CSS/JS). Его можно использовать для тестирования верстки и JavaScript.</p>
2
<p>Как правило, после написания кода его тестируют.<strong>Zombie.js</strong>- фреймворк для написания тестов, имитирующий браузер (поддерживается CSS/JS). Его можно использовать для тестирования верстки и JavaScript.</p>
3
<p>Рассмотрим пример теста, тестирующий положительный сценарий успешной регистрации на каком-нибудь воображаемом сайте. Следует учесть, что код запускается под Node.JS:</p>
3
<p>Рассмотрим пример теста, тестирующий положительный сценарий успешной регистрации на каком-нибудь воображаемом сайте. Следует учесть, что код запускается под Node.JS:</p>
4
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', 'tester@example.com') .fill('password', '123456') .fill('password-confirm', '123456') .pressButton('Зарегистрироваться', done); }); // it описывает конкретное требование, а также код для его проверки it('регистрация должна быть успешной', function() { browser.assert.success(); }); it('пользователь увидит приветственное сообщение', function() { // Уведомление должно быть выведено в элементе с классом notification // (применяется CSS-синтаксис селекторов) browser.assert.text('.notification', 'Вы успешно зарегистрированы'); }); }); });<p>Для установки Zombie.js вам понадобится Node.js и следующая команда:</p>
4
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', 'tester@example.com') .fill('password', '123456') .fill('password-confirm', '123456') .pressButton('Зарегистрироваться', done); }); // it описывает конкретное требование, а также код для его проверки it('регистрация должна быть успешной', function() { browser.assert.success(); }); it('пользователь увидит приветственное сообщение', function() { // Уведомление должно быть выведено в элементе с классом notification // (применяется CSS-синтаксис селекторов) browser.assert.text('.notification', 'Вы успешно зарегистрированы'); }); }); });<p>Для установки Zombie.js вам понадобится Node.js и следующая команда:</p>
5
$ npm install zombie --save-dev<p>Подробнее ознакомиться с Zombie.js можно на<a>официальном сайте</a>.</p>
5
$ npm install zombie --save-dev<p>Подробнее ознакомиться с Zombie.js можно на<a>официальном сайте</a>.</p>
6
<p><em><a>Источник</a></em></p>
6
<p><em><a>Источник</a></em></p>
7
7