Отладка, трассировка и тестирование

Встроенные в IDE инструменты значительно упрощают процессы отладки, трассировки и тестирования. WebStorm поможет решить эти задачи как при работе над клиентским приложениями, так и приложениями на Node.js.

Отладка JavaScript и Node.js

В WebStorm есть продвинутый отладчик, который работает с браузером Google Chrome. Он встроен в IDE, поэтому не нужно переключаться между редактором и браузером для отладки.

Поддержка source maps позволяет легко отлаживать код на ECMAScript 6, TypeScript или CoffeeScript.

Многофункциональный встроенный отладчик для Node.js также работает из коробки. Используйте его для локальной и удаленной отладки приложений.

У отладчика WebStorm есть несколько панелей: фреймы, глобальные и локальные переменные и watches. Значения переменных отображаются в редакторе рядом с их определениями. Вы можете легко вычислять значения выражений на JavaScript в контексте запуска. Для точек останова можно задать условия срабатывания.

Трассировка

Встроенный инструмент spy-js помогает трассировать код и эффективно находить возможные узкие места. Он работает на стороне клиента как с JavaScript, так и с Node.js и даже поддерживает языки, компилирующиеся в JavaScript.

С помощью spy-js можно просмотреть полный список событий, которые вызвали исполнение кода, stack trace для каждого события и подсвеченный путь выполнения кода. Эти данные также используются для более точного автодополнения.

Кроме того, spy-js помогает визуализировать структуру приложения. Используйте диаграмму, полученную на основе данных spy-js, чтобы увидеть связи между файлами проекта и вызовами функций.

Юнит-тестирование

Для удобства юнит-тестирования WebStorm интегрирован с популярными тестовыми фреймворками.

Выберите фреймворк Karma или Jest для тестирования клиентского JavaScipt-кода или Mocha для тестирования Node.js. Запускайте и отлаживайте тесты прямо в IDE, просматривайте результаты в удобном формате и легко переходите к коду теста.

Отчеты о покрытии кода также доступны для тестов на Karma.

WebStorm поддерживает фреймворк Protractor для сквозного тестирования на Angular, JSTestDriver, Cucumber.js для BDD и Nodeunit.

Профилирование

WebStorm помогает записывать и исследовать снимки памяти и профили CPU движка V8 для приложений на Node.js. Благодаря удобному представлению данных профилировщика легко находить узкие места и утечки памяти в приложении.