WebDriverIO: запуск Chrome с сеансами браузера и файлами cookie - PullRequest
0 голосов
/ 22 октября 2019

Можно ли запустить тестовый пример WebdriverIO с Google Chrome, не создавая «личное окно Chrome» ( без кэша или файлов cookie ).

Я хочу запустить браузер Chrome. Я хочу использовать файлы cookie и кэш из Chrome, а не состояние по умолчанию.

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

Итак, в терминале, если я запускаю open http://localhost:3001, Chrome открываетсяприложение без необходимости повторного входа в систему.

! Примечание: Я не хочу проходить процедуру входа в свои тесты ... Я просто хочу использовать сохраненный токен сеансав Chrome после входа в систему вручную.

1 Ответ

0 голосов
/ 22 октября 2019

Прежде всего, вас не должно шокировать, что инструмент тестирования запускается из пустого браузера состояния. Кто хотел бы, чтобы контекст тестирования был загрязнен предыдущим просмотром, настройками, файлами cookie и т. Д.? Во-вторых, мне немного смешно, что вы хотите автоматизировать задачу, но не хотите автоматизировать еще 3-5 шагов для успешного входа в систему.


Если у вас есть какой-то обширный уровеньконфигурации, которые необходимо добавить в ваш экземпляр Chrome ( файлы cookie, локальное хранилище, расширения, пользователи и пароли ), а затем пользовательские профили Chrome - это то, что вам нужно.

  1. Определите, где Chrome хранит папку По умолчанию

В основном вы пытаетесь создать Chrome с определенным набором конфигов. Они обычно хранятся в папке По умолчанию ( путь: /Users/YourUserHere/Library/Application Support/Google/Chrome/Default).

! Примечание: Этот путь может отличаться от ОС кОС, поэтому рекомендуемый способ узнать, где Chrome хранит эти конфиги на вашем устройстве, - открыть новую вкладку Chrome и набрать chrome://version. Здесь мы ищем настройку Путь к профилю .

Сохраните содержимое папки По умолчанию в назначенной папке ресурсов

Добавьте путь к вашим пользовательским конфигурациям Chrome через --user-data-dir Хромированный CLI-переключатель :


'goog:chromeOptions': {
// 'moz:firefoxOptions': {
  args: [ '--no-sandbox',
          '--disable-gpu',
          '--start-fullscreen',
          '--disable-notifications',
          '--user-data-dir=/Path/To/Your/CustomConfigsFolder',
        ],
   }
}
Запустите тест с помощью browser.debug() и убедитесь, что конфиги были успешно импортированы.

Примечание: Мне кажется, я решил более общий вопрос с это ответ. Проверьте это, может быть, это еще больше поможет в настройке.

...