指定了主机头或源头,而不是硒网格的本地主机

时间:2019-05-10 18:54:24

标签: selenium selenium-chromedriver selenium-grid

我正在尝试使用最新的chrome和chromedriver建立硒网格。尝试运行测试时出现以下错误

Message: OpenQA.Selenium.WebDriverException : Unexpected error. Host header or origin header is specified and is not localhost.

在节点计算机上,我看到chrome浏览器已打开,但随后它立即关闭,并出现此错误:

[1557513678.682][SEVERE]: Rejecting request with host: <hub_IP_address>:4444

有人使用硒栅遇到了这个问题吗?我正在使用:

  • selenium-server-standalone-4.0.0-alpha-1.jar和
  • 用于Windows的Chromedriver 74.0.3729.6
  • 我的Chrome浏览器正在运行v.74.0.3729.108
  • JDK 12.0.1.0

这是我启动集线器的命令:

java -jar selenium-server-standalone-4.0.0-alpha-1.jar -role hub -hubConfig config.json

这是我启动节点的命令:

java -Dwebdriver.chrome.driver="C:\...\Browsers\ChromeDirectory\chromedriver.exe" -Dwebdriver.ie.driver="C:\...\Browsers\IEDirectory\x86\IEDriverServer.exe" -jar -Dwebdriver.edge.driver="C:\...\Browsers\Edge\MicrosoftWebDriver.exe" -jar "C:\Users\Lenel\Documents\selenium-server-standalone-4.0.0-alpha-1.jar" -role node -hub "http://<hub_IP_address>:4444/grid/register/" -nodeConfig "C:\...\config.json"

我尝试在config.jsons中使用“主机”属性。我试过把实际的IP地址和只是本地主机。但是集线器和节点显然是不同的机器,因此放置localhost可以使其无法连接。但是当我没有本地主机时,它说需要将其指定为本地主机吗?我很困惑!!主机属性应该包含什么?

我已经看到人们谈论量角器的回送属性,但是我没有使用量角器。我尝试将“ loopback”:true放入节点和集线器config.json文件中,但这似乎没有什么不同。

1 个答案:

答案 0 :(得分:0)

我能够通过降级到3.8.1硒网格罐并安装JDK 8而不是12来使硒网格工作。在this other question中回答了需要Java 8的原因。我使用了相同的Chrome驱动程序并启动了命令