在Selenium Grid中使用无头Chrome进行测试

时间:2018-04-26 14:51:24

标签: selenium headless

我使用

成功运行Selenium独立服务器的无头Chrome
chromeOptions: {
    args: ["--headless"]
}

但是当我决定将它推向Selenium Grid时,它对我来说并不起作用。

如何为Selenium Node / Chrome正确配置无头模式

我也对在哪里配置远程Chrome实例感到困惑。我可以看到客户端有一组功能配置。我还可以在Selenium Node配置文件中看到一组功能。 我在两边都设置了无头旗,但他们两个都没有工作。

由于

1 个答案:

答案 0 :(得分:0)

Python

创建Remote()网络驱动程序对象时,可以添加desired_capabilities作为参数,例如:

{'platform': 'ANY', 'browserName': 'chrome', 'javascriptEnabled': True, 'goog:chromeOptions': {'extensions': [], 'args': ['headless', 'window-size=1920x1080']}, 'version': ''}

还有to_capabilities()对象的ChromeOptions()方法,该方法将配置的Chrome选项作为字典返回。

这是操作方法的示例:

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('headless')
chrome_options.add_argument('window-size=1920x1080')
capabilities = {'browserName': 'chrome', 'javascriptEnabled': True}
capabilities.update(chrome_options.to_capabilities())
drv_chrome = webdriver.Remote(command_executor = 'http://192.168.122.60:4444/wd/hub', desired_capabilities = capabilities)