12 Обязательных инструментов для Тестирования Кода
Новые фреймворки и инструменты для тестирования кода и юзабилити появляются каждый день. Ниже представлен список инструментов для тестирования программного кода, которые подходят под разные нужды. Рассмотрите каждый из них, чтобы убедиться в том, смогут ли они удовлетворить ваши технические потребности.
01. Jasmine
Jasmine – это фреймворк для разработки, с помощью которого можно осуществить тестирование JavaScript кода. Он не зависит от других JavaScript фреймворков и не нуждается в DOM. Тем не менее, в нем понятный и очевидный синтаксис, на котором легко проводить тесты.
02. Mocha
Mocha – это многофункциональный фреймворк для JavaScript, осуществляющий тестирование кода онлайн: он работает на Node.js прямо в браузере. Mocha выполняет тесты серийно, что обеспечивает гибкую и точную отчетность.
03. Chai
Chai – это BDD / TDD библиотека для Node.js и браузера, которая может быть легко объединена с любым JavaScript фреймворком для тестирования.
04. QUnit
QUnit – это мощный, простой в использовании фреймворк для тестирования JavaScript модулей. Он используется в jQuery, jQuery UI и jQuery Mobile и способен тестировать любой JavaScript код.
05. Sinon
Sinon.js производит автономных тестовых шпионов, заглушки и макеты JavaScript. Он ни от чего не зависит и работает с любым тестировочным фреймворком.
06. Karma
Karma – это фреймворк-агностик, проводящий тесты для браузеров. Результат каждого теста для каждого браузера отображается в коммандной строке, так что разработчик может увидеть, какой из тестов и для какого браузера прошел успешно или был провален.
07. Selenium
У Selenium прямая цель: автоматизировать браузеры. Прежде всего его используют для автоматизации веб-приложений в целях тестирования, но он также легко справляется с административными задачами.
08. WebdriverIO
WebdriverIO позволяет пользователю управлять браузером или мобильным приложением с помощью пары строк кода, делая тестирование кода простым, лаконичным и легко читаемым. Интегрированный тестировщик также позволяет синхронно писать асинхронные команды, создавая максимально удобные условия. Кроме того, он заботится обо всей работе и управляет сеансами вместо вас.
09. Nightwatch
Nightwatch.js – это простой в использовании, работающий на Node.js, End-to-End (E2E) тестировщик для браузерных приложений и сайтов. Он использует мощную W3C WebDriver API, чтобы управлять DOM элементами.
10. PhantomCSS
PhantomCSS берет скриншоты, сделанные Casper.js и сравнивает их с первоначальными изображениями с помощью Resemble.js, чтобы протестировать различия в RGB пикселях. Затем PhantomCSS генерирует отличия в изображениях, чтобы вы смогли понять причину.
11. PhantomFlow
PhantomFlow предоставляет тестирование UI с помощью древа решений. Он обеспечивает экспериментальный подход к тестированию пользовательского интерфейса, основанный на деревьях принятия решений. Обертка Node.js для Phantom.js, Casper.js, PhantomCSS и PhantomFlow позволяет описывать поведение пользователей, генерируя древа данных для визуализации.
12. Percy.io
Percy обеспечивает итеративную и быструю обратную связь о визуальных изменениях, создавая так называемую непрерывную визуальную интеграцию.
Перевод статьи 12 must-have code testing tools