Подключитесь к уже запущенному экземпляру Chrome из Puppetry - PullRequest
0 голосов
/ 25 февраля 2020

Есть несколько тестовых случаев, когда нам нужно подключить Puppetry к уже разрушенному экземпляру chrome. Например, вы не можете решить reCaptcha с помощью автоматических тестов, но вы можете сделать это вручную и запустить тесты для затронутого экземпляра Chrome.

Так как мы можем это сделать?

1 Ответ

0 голосов
/ 25 февраля 2020

Для подключения нам нужно запустить Chrome в командной строке с параметром порта удаленной отладки.

Окно:

start chrome.exe –remote-debugging-port=9222 --user-data-dir=remote-profile

macOS

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --no-first-run --no-default-browser-check --user-data-dir=$(mktemp -d -t 'chrome-remote_data_dir')

Linux

google-chrome --remote-debugging-port=9222

Далее в запущенном браузере перейдем к http://127.0.0.1: 9222 / json / version . На странице мы видим объект JSON.

enter image description here

Нам необходимо скопировать значение свойства webSocketDebuggerUrl. В Puppetry мы открываем модальное окно «Выполнить тесты» (F6), переключаемся на вкладку «Параметры браузера» и вставляем сохраненное значение во вход «Конечная точка WS».

enter image description here

Теперь мы можем нажать «Run».

...