Перейти к содержанию

Как подключить браузер Chrome через debug порт

  1. Настройки, когда запускается браузер, в котором будут открываться произвольные сайты:

    • В конфигурации должны быть разрешены синхронные вызовы или в качестве менеджера тестирования должна быть конфигурация, в которой разрешены синхронные вызовы. Также возможно использовать конфигурацию, в который синхронные вызовы запрещены, но тогда не надо запускать тонкий клиент из конфиуратора. Подробнее см в FAQ.
    • На закладке Сервис – Основные необходимо установить флаг Использовать компоненту VanessaExt
    • На закладке Сервис - Настройки клиентов тестирования в настройках запуска браузера нажимаем на кнопку Chrome+debug. Заполнится команда запуска браузера с ключом --remote-debugging-port=9222.
    • На закладке Сервис - Настройки клиентов тестирования установить флаг «Использовать браузер + web socket».
  2. Дополнительно, если в браузере будет открываться web клиент:

    • Версия платформы менеджера тестирования и клиента тестирования должна совпадать. Это касается тонкого, толстого, web клиента.
    • Для файловой базы имя ПК в подключениях обычно указывается localhost, порт 1538.
    • Для серверной базы имя ПК обычно указывается сетевое имя кластера 1С (или ip адрес), порт 1541. Кластер должен быть доступен по сети с того компьютера, на котором запускается менеджер тестирования.
    • Вкладку бразуера нельзя закрывать крестиком, если в ней запущен web клиент 1С. Только через Файл -> Выход. Иначе останется незакрытая сессия в кластере 1С или на web сервере и второй раз web клиент может не запуститься.
    • Уникальность подключения web клиента определяется по имени подключения.
    • Подробности смотри тут. Глава 2. Закладка "Клиенты тестирования".

Ключи для стабильной работы тестов

При прогоне тестов окно браузера часто перекрыто окном Vanessa Automation, и Chrome считает вкладку фоновой: троттлит таймеры JavaScript и понижает приоритет процесса рендеринга. Из-за этого тесты работают нестабильно.

Кнопки "Chrome" и "Chrome+debug" добавляют в команду запуска ключи, которые это отключают:

  • --disable-background-timer-throttling - отключает троттлинг таймеров в фоновых вкладках.
  • --disable-renderer-backgrounding - не понижает приоритет процесса рендеринга фоновых вкладок.
  • --disable-backgrounding-occluded-windows - не считает вкладку фоновой, если ее окно перекрыто другим окном.
  • --disable-features=CalculateNativeWinOcclusion (только Windows) - отключает расчет окклюзии окна на уровне Windows.

Если команда запуска браузера уже сохранена в настройках или в файле параметров запуска, перезаполните ее кнопкой или допишите ключи руками. Если добавляете свой ключ --disable-features, новые фичи дописывайте в существующий список через запятую, а не указывайте ключ повторно: при повторе ключа действует только последнее значение.

Для режима "Использовать браузер + web socket" в команде обязателен ключ --user-data-dir: начиная с Chrome 136 ключ --remote-debugging-port без него не работает. Пример команды для Windows:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir=C:\temp\chrome_debug_profile --disable-background-timer-throttling --disable-renderer-backgrounding --disable-backgrounding-occluded-windows --disable-features=CalculateNativeWinOcclusion

Шаг «И Нужно сбросить браузер»

Шаг «И Нужно сбросить браузер» закрывает и заново запускает браузер из команды запуска браузера. Закрытие выполняется принудительно по имени процесса браузера (chrome.exe, chromium и т.п.), поэтому закрываются все процессы этого браузера у текущего пользователя, включая личные окна. Перед прогоном сценариев с этим шагом сохраните работу в личном браузере.