Successfully reported this slideshow.
Обзор средств для тестирования JavaScript-кода:
QUnit, Jasmine, ZombieJS, PhantomJS, SinonJS и др.
Middle-developer
Чипига...
QUnit
официальный сайт: http://qunitjs.com/
QUnit — это библиотека от разработчиков jQuery, позволяющая писать unit-тесты
...
QUnit
А так выглядят результаты тестирования в браузере:
JasmineJS
официальный сайт: http://pivotal.github.io/jasmine/
Jasmine это BDD фреймворк для тестирования JavaScript кода, ...
JasmineJS
Так выглядят тесты в браузере:
Mocha
официальный сайт: http://visionmedia.github.io/mocha/
Mocha - многофункциональный фреймворк для тестирования JavaScr...
Mocha
Возможности и особенности:
• запуск тестов из браузера;
• тестирование асинхронных запросов на примитивном уровне;
•...
ChaiJS
официальный сайт: http://chaijs.com/
ChaiJS - это BDD / TDD библиотека утверждений для nodejs и браузера, которая
м...
SinonJS
официальный сайт: http://sinonjs.org/
SinonJS - Standalone test spies, stubs and mocks for JavaScript. No dependen...
Karma
официальный сайт: http://karma-runner.github.io/0.8/index.html
Karma - Spectacular Test Runner for JavaScript
Особен...
PhantomJS
официальный сайт: http://phantomjs.org/
https://twitter.com/phantomjs
PhantomJS - это возможности WebKit из конс...
PhantomJS
Возможности:
• Headless web testing
• Page automation
• Screen capture
• Network monitoring
• Multiplatform
• Fa...
ZombieJS
официальный сайт: http://zombie.labnotes.org/
ZombieJS - легковесный фреймворк для тестирования client-side Javas...
ZombieJS
Поддерживает методы для быстрого написания тестов:
browser.authenticate().basic("me", "secret")
browser.visit(url...
Thank you for your attendance!
Upcoming SlideShare
Loading in …5
×

обзор средств для тестирования Java script

2,701 views

Published on

  • Be the first to comment

обзор средств для тестирования Java script

  1. 1. Обзор средств для тестирования JavaScript-кода: QUnit, Jasmine, ZombieJS, PhantomJS, SinonJS и др. Middle-developer Чипига Сергей Казань, Барс-Груп, 2013
  2. 2. QUnit официальный сайт: http://qunitjs.com/ QUnit — это библиотека от разработчиков jQuery, позволяющая писать unit-тесты для кода на javascript.
  3. 3. QUnit А так выглядят результаты тестирования в браузере:
  4. 4. JasmineJS официальный сайт: http://pivotal.github.io/jasmine/ Jasmine это BDD фреймворк для тестирования JavaScript кода, позаимствовавший многие черты из RSpec.
  5. 5. JasmineJS Так выглядят тесты в браузере:
  6. 6. Mocha официальный сайт: http://visionmedia.github.io/mocha/ Mocha - многофункциональный фреймворк для тестирования JavaScript, работающий как с nodejs, так и с браузером, делает асинхронное тестирование простым и веселым.
  7. 7. Mocha Возможности и особенности: • запуск тестов из браузера; • тестирование асинхронных запросов на примитивном уровне; • генерация отчетов покрытия тестами; • предоставление javascript API для запуска тестов; • поддержка таймаутов для асинхронных тестов; • подсветка медленных тестов • определение утечек глобальных переменных • возможность использовать любую библиотеку утверждений • хуки before, after, after each, before each
  8. 8. ChaiJS официальный сайт: http://chaijs.com/ ChaiJS - это BDD / TDD библиотека утверждений для nodejs и браузера, которая может быть легко использована в паре с любым фреймворком тестирования JavaScript. assert assert.typeOf(foo, 'string', 'foo is a string'); assert.equal(foo, 'bar', 'foo equal `bar`'); assert.lengthOf(foo, 3, 'foo`s value has a length of 3'); assert.lengthOf(beverages.tea, 3, 'beverages has 3 types of tea'); expect expect(foo).to.be.a('string'); expect(foo).to.equal('bar'); expect(foo).to.have.length(3); expect(beverages).to.have.property('tea').with.length(3); should foo.should.be.a('string'); foo.should.equal('bar'); foo.should.have.length(3); beverages.should.have.property('tea').with.length(3)
  9. 9. SinonJS официальный сайт: http://sinonjs.org/ SinonJS - Standalone test spies, stubs and mocks for JavaScript. No dependencies, works with any unit testing framework.
  10. 10. Karma официальный сайт: http://karma-runner.github.io/0.8/index.html Karma - Spectacular Test Runner for JavaScript Особенности: • Test on Real Devices • Open Source • Remote Control • Easy Debugging • Testing Framework Agnostic • Continuous Integration
  11. 11. PhantomJS официальный сайт: http://phantomjs.org/ https://twitter.com/phantomjs PhantomJS - это возможности WebKit из консоли управлять JavaScript с поддержкой различных стандартов и технологий: DOM, CSS, JSON, Canvas и SVG. После запуска: phantomjs loadspeed.js http://www.google.com результат: Loading http://www.google.com Page title is Google Loading time 719 msec
  12. 12. PhantomJS Возможности: • Headless web testing • Page automation • Screen capture • Network monitoring • Multiplatform • Fast and native implementation • Pure headless (no X11) on Linux • Easy to install
  13. 13. ZombieJS официальный сайт: http://zombie.labnotes.org/ ZombieJS - легковесный фреймворк для тестирования client-side Javascript-кода. Имитирует поведение браузера. Умеет интегрироваться с различного рода средствами тестирования JavaScript: QUnit, Jasmine, Mocha
  14. 14. ZombieJS Поддерживает методы для быстрого написания тестов: browser.authenticate().basic("me", "secret") browser.visit(url, options, callback) browser.text(selector, context?) browser.query(selector, context?) browser.back(callback) browser.clickLink(selector, callback) browser.fill(field, value, callback) browser.pressButton(selector, callback) Официальная документация: http://zombie.labnotes.org/zombie.pdf
  15. 15. Thank you for your attendance!

×