Как отлаживать тесты углового транспортира в WebStorm

В WebStorm есть возможность запускать и отлаживать веб-тесты транспортира. Я просто хочу поделиться этим ответом здесь


person Sergei Panfilov    schedule 22.11.2013    source источник


Ответы (7)


  1. Получите путь к узлу (введите which node в своем терминале)
  2. В WebStorm: нажмите «Изменить конфигурации» - раскрывающееся меню слева от кнопки «Выполнить» (зеленая стрелка, похожая на кнопку «воспроизведение»).
  3. Нажмите кнопку «Добавить» (зеленая +), чтобы добавить новую конфигурацию узла. Выберите «Node.js».
  4. Заполните параметры:

Интерпретатор узла: полный путь к Node.js (с шага 1).

Рабочий каталог: домашний каталог для тестов транспортира.

Файл Javascript: полный путь к node_modules/protractor/lib/cli.js

Параметры приложения: полный путь к protractor-conf.js

Теперь вы можете запускать и отлаживать тесты, нажимая кнопки «Выполнить» или «Отладка» в верхней части IDE.

person Sergei Panfilov    schedule 22.11.2013
comment
Хм .. может несколько шагов не разобрались? Пожалуйста, дайте больше информации, я постараюсь вам помочь - person Sergei Panfilov; 03.02.2014
comment
да, у меня тоже не сработало; подробно опубликовано здесь - stackoverflow.com/q/21992414/537913 - person J. Ed; 24.02.2014
comment
В моем случае он не запускает тесты, если я использую Debug (значок ошибки), и он запускает тесты, если я использую Run (значок воспроизведения), но он нигде не останавливается. - person Diego Pamio; 25.02.2014
comment
Похоже, что при выполнении параметра Debug (значок ошибки) он добавляет --debug-brk = 62532 --nolazy в командную строку узла. - person Diego Pamio; 25.02.2014
comment
Дополнительная вещь в этом видео (youtube.com/watch?v=VLMyI7QKcwg) похоже, что веб-шторм идентифицирует точку останова с помощью обычного тика внутри, тогда как в моем случае это не так. - person Diego Pamio; 25.02.2014
comment
Я думаю, это должен быть protractor.conf.js не protractor-conf.js. - person camden_kid; 24.09.2014
comment
В моем случае - работает нормально. во время отладки выдает ошибку. Процесс завершен с кодом выхода 139. Я на Mac. - person Nitin Jadhav; 12.04.2016
comment
В моем случае файл javascript выглядит следующим образом: node_modules / protractor / bin / protractor - person Ferenc Takacs; 22.11.2016

Оно работает! Вот мои настройки

введите описание изображения здесь

person David Dehghan    schedule 01.10.2015
comment
это работает для меня, только если я добавлю '--harmony' к параметрам узла - person RoberMP; 08.04.2016
comment
Путь теперь node_modules / protractor / built / cli.js - person Tony O'Hagan; 13.05.2016
comment
Полный путь на моем Mac был /usr/local/lib/node_modules/protractor/built/cli.js - person camden_kid; 31.08.2016
comment
Также убедитесь, что ng serve работает, веб-шторм просто запускает тест транспортира, а не запускает сервер, в отличие от командной строки. - person user3444999; 27.12.2018

У меня возникли те же проблемы, которые описаны в комментариях к ответу С.Панфилова, т.е. запуск транспортира в WebStorm работал нормально, но процесс отладки где-то застрял.

Проблема описана здесь. Это происходило в Mac OS X с транспортиром версии 0.20.1 и узлом v0.10.26.

Проблема решена в версии 0.22.

  • Обновите транспортир до последней версии (> = 0.22) с помощью npm
  • Запустите снова: node_modules / protractor / bin / webdriver-manager update
  • В WebStorm настройте «Your Protractor Conf», как описано в ответе С.Панфилова.
  • Установите точки останова в тестовом файле транспортира (сначала посмотрите это видео)
  • Запустите «Выполнить> Отладка 'Your Protractor Conf'» из WebStorm.
  • Наслаждайтесь отладкой
person guidoman    schedule 08.05.2014

Для Mac OSX:  введите описание изображения здесь слева вы можете увидеть структуру папок с тестами

person pbaranski    schedule 09.08.2016

Кстати, если вам нужно передать дополнительные параметры вот конфигурация, которая вам нужна

  • Выберите конфигурацию ‘Node.js’ из списка.
  • Имя: «Транспортир»
  • Интерпретатор узла: «C: \ Program Files \ nodejs \ node.exe»
  • Параметры узла: ‘’
  • Рабочий каталог:
  • Файл JavaScript: ‘~ \ AppData \ Roaming \ npm \ node_modules \ protractor \ built \ cli.js’
  • Параметры приложения, здесь вы указываете путь к вашей конфигурации относительно рабочего каталога ^, а затем такие параметры, как это: 'e2e / settings / configs / protractor.custom.conf.js --baseUrl = " https://stage.mysite.com "--params.login =" testuser "--params.password =" test_USER00 "'
  • Переменные среды: ‘’

Эта конфигурация отлично работает в моем проекте, где мы полагаемся исключительно на синтаксис async / await.

person Sergey Pleshakov    schedule 14.12.2018

Работал у меня. Он искал protractor.conf.js не в той папке. Пришлось поискать пару каталогов.

Параметры приложения: ../../protractor.conf.js

person Chester Rivas    schedule 01.04.2014

Как и некоторые другие ответы здесь, я обнаружил, что могу работать в выпуске, но не могу работать в отладке, и в какой-то момент он просто зависает. Я обнаружил, что у меня есть файл conf, настроенный для двух браузеров, и кажется, что это слишком много для отладчика, и он зависнет без дополнительной информации. Таргетинг только на один браузер устранил эту проблему для меня.

person Andrew    schedule 24.08.2015