我需要使用Python代码和Selenium HUB驱动程序执行集成测试。 我打算使用远程驱动程序(我在https://github.com/SeleniumHQ/docker-selenium上使用Selenium HUB docker映像)。
我无法弄清楚如何在Selenium HUB映像中创建持久配置文件以及如何从远程Webdriver调用。 我想我需要首先在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
如何在Docker Selenium Hub映像上创建“ 用户数据目录”配置文件?
Thx
我运行“ chrome:\ version”,就可以识别配置文件
我可以在' user-data-dir '参数中指定它,但是在docker上提交后,重新启动图像时,路径会更改。 有什么办法可以使其持久化?
我已经创建了一个文件夹“ / etc / opt / chrome / profile / maya”
我已经创建了一个test_policy.json文件:
{
"UserDataDir": "/etc/opt/chrome/profile/maya"
}
放在此目录中:
/etc/opt/chrome/policies/managed
当我尝试执行“ chrome:// policy /”时,我看到了:
答案 0 :(得分:1)
您可以使用chrome://policy
将自定义路径添加到chrome,然后将该策略文件添加到docker映像。
请手动尝试策略设置以断言该方法是否适合您。在尝试确保您创建了有效的策略文件时。详细步骤为here。
在docker文件中添加步骤。
3.1。如步骤1所述创建文件夹
3.2。复制在步骤1中测试的策略文件
PS:这种方法对我有用,因为我在chrome中做了一些自定义。如果您需要更多信息,请告诉我。