无法在 Chrome 的多个实例上获取 Selenium Grid 3.0.1 运行

Unable to get Selenium Grid 3.0.1 running on multiple instances of Chrome

我最近从 Selenium Grid 2.48 迁移到 3.0.1,但在 Chrome.

的多个实例上进行 运行 测试时遇到问题

看来,当 Selenium Grid 从 v2 更改为 v3 时,Chrome 的默认浏览器实例从五个更改为一个。在 v2 中,我 运行 在默认的五个 Chrome 实例上并行执行 C#/NUnit3 测试没有问题。

但是,自从迁移到 v3 后,我只能为每个节点 运行 提供一个线程。我可以用 maxInstances=5 启动节点,并且可以在网格控制台中看到它们。网格控制台显示这条消息“4 个请求正在等待空闲槽”。即使有四个实例空闲。

我的网格配置如下:

枢纽

java -jar selenium-server-standalone-3.0.1.jar -role hub -newSessionWaitTimeout -1 -maxSession 50 -browserTimeout 90  -timeout 100

节点

java -jar selenium-server-standalone-3.0.1.jar -port 5556 -role node -hub http://host:4444/grid/register  -browser browserName=chrome,maxInstances=5

如果我使用 selenium-server-standalone-2.48。2.jar 即使测试是使用 v3 WebDriver 和 WebDriver.Support dll 编写的,一切都按预期工作。

您应该在 节点 上使用 -maxSession 参数,看看它是否有帮助。似乎在 v3 上 maxSession 默认为 1,这意味着你不能 运行 它并行,除非你在想要的数字上设置 maxSession 属性 。

maxSession 是多个 (any) 个浏览器实例,可以 运行 并行。