【问题标题】:selenium grid specify platform硒网格指定平台
【发布时间】:2019-03-27 20:13:44
【问题描述】:

我正在使用来自https://github.com/SeleniumHQ/docker-selenium 的官方 selenium 网格和节点图像以及 JAVA 的远程网络驱动程序。

是否可以强制节点在 windows 上运行 chrome 浏览器?或者至少表现得好像它是一样的?

尝试在节点的配置 (https://github.com/SeleniumHQ/docker-selenium/blob/master/NodeChrome/generate_config) 中设置功能并重建图像。

  "capabilities": [
    {
      "platform": "WIN10",
      "version": "$CHROME_VERSION",
      "browserName": "chrome",
      "maxInstances": $NODE_MAX_INSTANCES,
      "seleniumProtocol": "WebDriver",
      "applicationName": "$NODE_APPLICATION_NAME"
    }
  ]

在这种情况下 - 没有效果(以太没有错误。只是继续使用platform: 'LINUX')。

并尝试指定浏览器的功能,例如capabilities.setPlatform(Platform.WIN10); - 在这种情况下,如果没有特定情况,则会出现错误Unable to create session,但我猜这种情况是平台功能选项。

有什么建议吗?

【问题讨论】:

  • 你的节点在哪里运行,是windows还是linux?
  • 在 Linux 上 //////
  • 这是预期的行为,因为 selenium 无法在 linux 机器上创建会话 windows 平台会话。在 windows 框中创建一个节点,然后尝试使用平台创建实例。
  • 好的,知道了,所以它是预期的。谢谢。
  • @supputuri - 我们可以在 docker 的部署 YAML 文件中使用 env 值编辑平台名称,以便我们获得 Windows 平台。如果是,那么 platorm 的关键是什么

标签: java selenium selenium-chromedriver selenium-grid


【解决方案1】:

“平台”:“WIN10”

不存在。

您可以在此处查看有关 DesiredCapabilites 的文档。

https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities

selenium 提供并支持这些平台:

{WINDOWS, XP, VISTA, MAC, LINUX, UNIX, ANDROID}

在您的特定情况下,如果您想要 Windows,请将您的平台更改为 "WINDOWS", "XP" or "VISTA"

此链接也可能对您有用: https://github.com/SeleniumHQ/selenium/wiki/Grid-Platforms

【讨论】:

  • 是的,我好像在监督这个 - 只是从 Platform 类复制的。但无论如何我必须在 Windows 服务器上运行网格,不是吗?
  • 看你的需要,selenium grid支持docker容器内的windows节点,但是你需要在config中指定,因为selenium grid的默认平台是linux。
【解决方案2】:

只是为了澄清。启动节点后,返回 Hub 控制台 http://localhost:4444/grid/console,然后检查浏览器配置。您可以在创建 Remote Driver 实例时在功能中使用它们。

【讨论】:

  • 是的,我知道。最初我的问题是我是否能够在不改变真实操作系统的情况下改变这些。
  • 是的,只是想添加更多信息,以帮助任何不确定如何使用基于集线器-节点组合的功能的人。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-04
  • 1970-01-01
  • 1970-01-01
  • 2018-09-19
  • 1970-01-01
相关资源
最近更新 更多