如何使用chrome节点配置运行selenium
对于2.0,我在节点配置json中使用以下配置设置运行Selenium网格:如何使用chrome节点配置运行selenium,selenium,selenium-grid,Selenium,Selenium Grid,对于2.0,我在节点配置json中使用以下配置设置运行Selenium网格: { ... "configuration":[ ... "dwebdriver.chrome.driver=...":"" ] } 现在我了解到配置变量已被展平,并尝试展平声明,但Chrome没有启动,并在节点控制台中显示错误 我可以在启动节点时添加-D参数(在命令行中-多亏了)成功运行chrome,但更希望将其全部包含在节点配置文件中我不记得能够传入JVM参数[webdriver.chr
{
...
"configuration":[
...
"dwebdriver.chrome.driver=...":""
]
}
现在我了解到配置变量已被展平,并尝试展平声明,但Chrome没有启动,并在节点控制台中显示错误
我可以在启动节点时添加-D参数(在命令行中-多亏了)成功运行chrome,但更希望将其全部包含在节点配置文件中我不记得能够传入JVM参数[
webdriver.chrome.driver
基本上是一个JVM参数]通过JSON配置文件
我也不记得看到过JSON配置文件的任何重构,这些重构用于生成集线器或节点。它们一直保持不变。(请参阅示例集线器配置和示例节点配置)
如果您不想通过JVM参数指定Chrome驱动程序的位置,我建议您只需将chromedriver.exe所在的路径作为每台机器的一次性活动添加到
path
变量中。之后,就不需要使用JVM参数指定chromedriver二进制文件所在的位置。我不记得能够通过JSON配置文件传入JVM参数[webdriver.chrome.driver
基本上是一个JVM参数]
我也不记得看到过JSON配置文件的任何重构,这些重构用于生成集线器或节点。它们一直保持不变。(请参阅示例集线器配置和示例节点配置)
如果您不想通过JVM参数指定Chrome驱动程序的位置,我建议您只需将chromedriver.exe所在的路径作为每台机器的一次性活动添加到
path
变量中。在此之后,不需要使用JVM参数指定chromedriver二进制文件所在的位置。将此配置文件用于节点:
注意最后两行
{
"capabilities":
[
{
"browserName": "firefox",
"marionette": true,
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "chrome",
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "internet explorer",
"platform": "WINDOWS",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "safari",
"technologyPreview": false,
"platform": "MAC",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
}
],
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"maxSession": 5,
"port": -1,
"register": true,
"registerCycle": 5000,
"hub": "http://192.168.1.2:4444",
"nodeStatusCheckTimeout": 5000,
"nodePolling": 5000,
"role": "node",
"unregisterIfStillDownAfter": 60000,
"downPollingLimit": 2,
"debug": false,
"servlets" : [],
"withoutServlets": [],
"custom": {},
"webdriver.gecko.driver":"c:/drivers/geckodriver.exe",
"webdriver.chrome.driver":"c:/drivers/chromedriver.exe"
}
将此配置文件用于节点: 注意最后两行
{
"capabilities":
[
{
"browserName": "firefox",
"marionette": true,
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "chrome",
"maxInstances": 5,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "internet explorer",
"platform": "WINDOWS",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
},
{
"browserName": "safari",
"technologyPreview": false,
"platform": "MAC",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
}
],
"proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
"maxSession": 5,
"port": -1,
"register": true,
"registerCycle": 5000,
"hub": "http://192.168.1.2:4444",
"nodeStatusCheckTimeout": 5000,
"nodePolling": 5000,
"role": "node",
"unregisterIfStillDownAfter": 60000,
"downPollingLimit": 2,
"debug": false,
"servlets" : [],
"withoutServlets": [],
"custom": {},
"webdriver.gecko.driver":"c:/drivers/geckodriver.exe",
"webdriver.chrome.driver":"c:/drivers/chromedriver.exe"
}
抱歉,这对我不起作用:“..$java--version”“openjdk 10.0.2 2018-07-17 openjdk运行时环境(build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)openjdk 64位服务器虚拟机(build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4,混合模式)”嗯,我使用JDK 8和windows运行,但我认为它可以与您一起使用,因为java是平台独立的,当然Selenium也将独立运行。但是它说了什么?selenium日志没有显示任何错误,并且该场景没有执行,抱怨selenium服务器没有运行。它真的在运行吗?是的-我可以看到连接到nodeSorry,这对我不起作用:“…$java--version”“openjdk 10.0.2 2018-07-17 openjdk运行时环境”(构建10.0.2+13-Ubuntu-1ubuntu0.18.04.4)OpenJDK 64位服务器虚拟机(构建10.0.2+13-Ubuntu-1ubuntu0.18.04.4,混合模式)嗯,我使用JDK 8和windows运行,但我认为它可以与u一起工作,因为java是平台独立的,当然Selenium也会独立运行。但是它说什么呢?Selenium日志没有显示任何错误,并且该场景没有执行,抱怨Selenium服务器没有运行。它真的在运行吗?是的,我可以看到一个连接n被添加到节点