当phantomjs在与selenium hub不同的计算机上运行时,连接被拒绝

当phantomjs在与selenium hub不同的计算机上运行时,连接被拒绝,selenium,selenium-webdriver,phantomjs,selenium-grid,ghostdriver,Selenium,Selenium Webdriver,Phantomjs,Selenium Grid,Ghostdriver,是否可以在一台计算机上安装selenium hub,在另一台计算机上安装phantomjs实例,并以与selenium节点相同的方式连接到该hub? 如果我在同一台机器上启动selenum hub和phantomjs实例,我就可以成功地运行测试 如果我在另一台机器上启动selenium hub和selenium节点,并使用firefox运行测试,那么测试将成功执行 如果我在另一台机器上启动selenium集线器和phantomjs实例,phantomjs将成功连接到集线器,但在集线器尝试发送测试

是否可以在一台计算机上安装selenium hub,在另一台计算机上安装phantomjs实例,并以与selenium节点相同的方式连接到该hub?

如果我在同一台机器上启动selenum hub和phantomjs实例,我就可以成功地运行测试

如果我在另一台机器上启动selenium hub和selenium节点,并使用firefox运行测试,那么测试将成功执行

如果我在另一台机器上启动selenium集线器和phantomjs实例,phantomjs将成功连接到集线器,但在集线器尝试发送测试时拒绝连接

我发现的每个连接到selenium集线器的phantomjs实例都会显示phantomjs实例与集线器运行在同一台机器上

基本环境信息:
  • 两台机器都在运行debian jessie
  • selenium-server-standalone-2.39.0.jar
  • phantomjs版本是1.9.7
  • 使用python和nose
场景和启动命令: 同一台机器上的hub和phantomjs成功执行测试

不同机器上的集线器和节点成功使用firefox执行测试

不同机器上的hub和phantomjs无法执行测试

  • 服务器输出

    Mar 10, 2014 12:19:57 PM org.openqa.grid.selenium.proxy.DefaultRemoteProxy isAlive
    WARNING: Failed to check status of node: Connection refused
    
  • 幻影输出

    PhantomJS is launching GhostDriver...
    [INFO  - 2014-03-10T16:15:46.149Z] GhostDriver - Main - running on port 8080
    [INFO  - 2014-03-10T16:15:46.150Z] GhostDriver - Main - registering to Selenium HUB 'http://10.3.1.120:4444' using '127.0.0.1:8080'
    [INFO  - 2014-03-10T16:15:46.198Z] HUB Register - register - Registered with grid hub: http://10.3.1.120:4444/ (ok)
    

添加webdriver参数的IP地址以及端口号。这应该有助于解决这个问题。前

phantomjs --webdriver-selenium-grid-hub=http://<Remote_IP_Of_Grid_Hub>:4444 --webdriver=<IP_Of_The_Local_Node>:9301
phantomjs--webdriver-selenium-grid-hub=http://:4444--webdriver=:9301

基本上,如果“-webdriver”参数中没有提到IP,则节点值将作为localhost发送。然后集线器在本地主机端口9301上查找请求。由于集线器上的端口9301未打开,连接最终会断开&我们看到错误。

我面临类似问题。使用2.36版本的selenium网格
Mar 10, 2014 12:19:57 PM org.openqa.grid.selenium.proxy.DefaultRemoteProxy isAlive
WARNING: Failed to check status of node: Connection refused
PhantomJS is launching GhostDriver...
[INFO  - 2014-03-10T16:15:46.149Z] GhostDriver - Main - running on port 8080
[INFO  - 2014-03-10T16:15:46.150Z] GhostDriver - Main - registering to Selenium HUB 'http://10.3.1.120:4444' using '127.0.0.1:8080'
[INFO  - 2014-03-10T16:15:46.198Z] HUB Register - register - Registered with grid hub: http://10.3.1.120:4444/ (ok)
phantomjs --webdriver-selenium-grid-hub=http://<Remote_IP_Of_Grid_Hub>:4444 --webdriver=<IP_Of_The_Local_Node>:9301