Selenium Hub - создайте профиль многоразового использования
Мне нужно выполнить интеграционное тестирование с использованием кода Python и драйвера Selenium HUB. Я планирую использовать удаленный драйвер (я использую образ докера Selenium HUB на https://github.com/SeleniumHQ/docker-selenium).
Я не могу понять, как создать постоянный профиль в образе Selenium HUB и вызвать его с удаленного веб-драйвера. Я думаю, мне нужно сначала создать профиль на Selenium HUB, а затем вспомнить в коде Python: chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('user-data-dir=##remotepath')
browser = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',desired_capabilities = chrome_options.to_capabilities())
browser.get('http://www.google.it')
session_id = browser.session_id
Как я могу создать профиль " user data dir " на образе Docker selenium Hub?
Спасибо
ОБНОВИТЬ
Я запустил "chrome:\version" и смог определить профиль
Я смог указать его в параметре ' user-data-dir ', но после фиксации в докере при повторном запуске образа путь изменился. Есть ли способ сделать его постоянным?
ОБНОВЛЕНИЕ 2
Я создал папку "/ etc / opt / chrome / profile / maya"
Я создал файл test_policy.json:
{
"UserDataDir": "/etc/opt/chrome/profile/maya"
}
размещены в этом каталоге:
/etc/opt/chrome/policies/managed
Когда я пытаюсь выполнить "chrome://policy/", я вижу это:
1 ответ
Вы можете добавить собственный путь к Chrome, используя chrome://policy
и позже добавьте эти файлы политики в образы докеров.
Попробуйте вручную настроить политику, чтобы подтвердить, что этот подход работает для вас. При попытке убедиться, что вы создали правильный файл политики. Подробные шаги здесь.
Добавление шагов в файл Docker.
3.1. Создание папки, как указано в шаге 1
3.2. Копирование файла политики, протестированного на шаге 1
- Создайте образ докера и используйте его.
PS: этот подход работает для меня, как я сделал некоторые настройки в Chrome. Дайте мне знать, если вам нужна дополнительная информация.