Selenium Server V3.141.59命令行节点分组方案咨询(无需JSON)
Selenium Grid 3.x 节点分组配置(命令行实现)
Selenium Grid 3.141.59支持节点分组功能,你之前参数未生效是因为使用了错误的参数名,正确的命令行配置方式如下:
一、Hub 端启动(无需分组配置)
Hub 端不需要添加任何分组相关参数,正常启动即可:
java -jar selenium-server-standalone-3.141.59.jar -role hub
二、Node 端命令行指定分组
针对你的需求,将4个Node分为2组(比如groupA和groupB,每组2个节点),启动Node时使用--node-group参数指定所属分组:
启动groupA的两个Node:
# 第一个groupA节点(默认端口5555) java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://<hub-IP>:4444/grid/register --node-group groupA # 第二个groupA节点(指定端口避免冲突) java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://<hub-IP>:4444/grid/register --node-group groupA -port 5556
启动groupB的两个Node:
# 第一个groupB节点 java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://<hub-IP>:4444/grid/register --node-group groupB -port 5557 # 第二个groupB节点 java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://<hub-IP>:4444/grid/register --node-group groupB -port 5558
三、测试代码中指定分组执行
编写测试用例时,通过DesiredCapabilities设置group参数,即可指定使用目标分组的节点执行测试:
Java 示例:
DesiredCapabilities caps = DesiredCapabilities.chrome(); caps.setCapability("group", "groupA"); WebDriver driver = new RemoteWebDriver(new URL("http://<hub-IP>:4444/wd/hub"), caps);
Python 示例:
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities.CHROME.copy() caps['group'] = 'groupB' driver = webdriver.Remote(command_executor='http://<hub-IP>:4444/wd/hub', desired_capabilities=caps)
四、验证分组生效
访问Hub控制台页面http://<hub-IP>:4444/grid/console,查看每个节点的配置信息,确认nodeGroup字段已正确显示所属分组。
内容的提问来源于stack exchange,提问作者ui uk
相关产品推荐
相关产品推荐

