Angular Cli, переписать команду, которая запускается 'NG E2E'? - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь запустить тесты Angular e2e для экземпляра приложения НА РАЗЛИЧНОМ СЕРВЕРЕ , чем на моей локальной машине. Чтобы было ясно, я не проверяю свой локальный код .

Мне просто нужно запустить транспортир без угловых шагов сборки, потому что это пустая трата времени, так как код, который я тестирую, находится на другом сервере. К сожалению, файл angular.json выдает ошибку, если я чрезмерно изменяю / удаляю следующую строку:

"builder": "@angular-devkit/build-angular:protractor",

У меня уже есть решение для этого, но оно давно затянуто, и я хотел бы иметь возможность не изменять то, как мои товарищи по команде проводят тесты из своих оболочек:

node node_modules/protractor/bin/protractor e2e/protractor.conf.js

У меня две мысли:

  1. Напишите скрипт npm, который запускает эту команду (что я, скорее всего, и сделаю)
  2. Узнайте, как перезаписать то, что делает ng e2e. Если я смогу выполнить более сложную команду здесь, это сэкономит производительность и время обратной связи.

Я на Angular V7.

Возможно ли перезаписать ng e2e, чтобы вместо него было выполнено node node_modules/protractor/bin/protractor e2e/protractor.conf.js?

1 Ответ

0 голосов
/ 10 января 2019

Да. Я бы сделал # 1. Это имеет смысл обновить ваш package.json

"scripts": {
  "protractor": "protractor e2e/protractor.conf.js"
}

, а затем просто запустите npm run protractor. Команда e2e также загружает chromedriver, файл jar селена и, возможно, geckodriver? с веб-драйвером-менеджером. Если вы хотите это в качестве предварительного шага:

"scripts": {
  "protractor": "protractor e2e/protractor.conf.js",
   // just download chromedriver and the selenium jar
  "preprotractor": "webdriver-manager update --gecko false"  
}

Он также запускает ваше угловое приложение. Если вам нужно это сделать, я бы просто позвонил ng serve и запустил его в фоновом режиме. Надеюсь, это поможет.

...