当前位置: 首页 > 面试题库 >

selenium网格侦听节点端口而不是集线器端口

羊舌兴文
2023-03-14
问题内容

为了进行测试,我在不同端口上本地运行网格和节点。

java -jar /usr/bin/selenium-server.jar -port 4444 -role hub
java -jar /usr/bin/selenium-server.jar -role node -hub http://127.0.0.1:4444/grid/register -port 5556

因此,网格在4444上运行,而节点在5556上运行。

在我的测试中,如果我以

driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=desired_capabilities)

然后测试失败,但出现异常

response = {'status': 500, 'value': '{"status":13,"value":{"class":"java.lang.NullPointerException","stackTrace":[{"fileName":"Ha...n","lineNumber":590},{"fileName":"Thread.java","className":"java.lang.Thread","methodName":"run","lineNumber":745}]}}'}

如果我在节点端口5555而不是集线器端口4444上运行测试,则测试通过,如下所示

driver = webdriver.Remote(command_executor='http://127.0.0.1:5555/wd/hub', desired_capabilities=desired_capabilities)

我认为,我们应该在集线器端口上运行测试,在本例中为4444,而不是5555。

如果我错了,请纠正我。


问题答案:

如果你打算使用 SeleniumGrid 通过配置 HubNode 配置,我会建议你使用最新的selenium-server-standalone-3.6.0 jar如下:

  1. 启动 Selenium Grid Hub (默认情况下在端口4444上):

    java -jar selenium-server-standalone-3.6.0.jar -role hub
    
  2. 确认 Selenium Grid Hub 已启动:

        16:06:29.891 INFO - Nodes should register to http://192.168.1.48:4444/grid/register/
    16:06:29.891 INFO - Selenium Grid hub is up and running
  1. 访问 Selenium Grid Hub Console 并确保 Selenium Grid Hub 已启动并正在运行:

    http://localhost:4444/grid/console
    
  2. 启动 Selenium Grid Node Mozilla / GeckoDriver 的(默认情况下,在端口5555上):

        java -Dwebdriver.gecko.driver=geckodriver.exe -jar selenium-server-standalone-3.6.0.jar -role node -hub http://localhost:4444/grid/register
  1. 确认 Selenium Grid Node 已注册并启动:
        16:15:54.696 INFO - Selenium Grid node is up and ready to register to the hub
    16:15:54.742 INFO - Starting auto registration thread. Will try to register every 5000 ms.
    16:15:54.742 INFO - Registering the node to the hub: http://localhost:4444/grid/register
    16:15:54.975 INFO - The node is registered to the hub and ready to use
  1. 执行 Testcase 具有 DesiredCapabilities 如下:
        self.driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=caps)
  1. 成功执行以下命令时,请观察控制台日志,并以以下结尾 Testcase
        16:23:50.590 INFO - Found handler: org.openqa.selenium.remote.server.ServicedSession@37ff9771
    16:23:50.590 INFO - Handler thread for session 31a1dcb0-8bed-40fb-acdb-d5be19f03ba2 (firefox): Executing DELETE on /session/31a1dcb0-8bed-40fb-acdb-d5be19f03ba2
     (handler: ServicedSession)
    1506941630595   Marionette      INFO    New connections will no longer be accepted


 类似资料:
  • 问题内容: 为了进行测试,我在不同端口上本地运行网格和节点。 因此,网格在4444上运行,而节点在5556上运行。 在我的测试中,如果我以 然后测试失败,但出现异常 如果我在节点端口5555而不是集线器端口4444上运行测试,则测试通过,如下所示 我认为,我们应该在集线器端口上运行测试,在本例中为4444,而不是5555。 如果我错了,请纠正我。 问题答案: 如果你打算使用 在 通过配置 和 配置

  • 我已经用重新启动了influxdb,但是没有任何帮助。 我错过了什么? 更新7.11.2016 21:59 更新13.4.2020问题已修复。 这是一个老问题,我不记得我到底是如何解决这个问题的,但我做到了。如果我没记错的话,问题是流入没有加载正确的配置文件,这是我自己当时的愚蠢。可悲的是,我不记得为什么会发生这种事,但我记得这是我自己做的。记住总是正确地阅读文档,并谷歌出它的sht。

  • 我正在为我的自动化套件使用Selenium Hub和Node设置。到目前为止,我正在使用以下命令在远程机器上手动启动集线器和节点。 java-jarselenium-server-standalone-3.141.59.jar-角色集线器 java-Dwebdriver.chrome.driver=chromedriver.exe-jarselenium-server-standalone-3.1

  • 问题内容: 我在运行RHEL7的Amazo EC2实例上运行elasticsearch 1.4和kibana4。 Kibana4作为独立进程运行,未部署在诸如nginx之类的Web容器中,它正在侦听端口5601(默认端口)。我想让kibana在80端口监听。 是否可以不使用nginx来实现?如果是,怎么办? 问题答案: 编辑文件{kibana-directory} /config/kibana.y

  • 我有一个监听两个不同端口的TCP服务器。我创建了两个不同的套接字,一个在端口8888上,一个在端口6634上。我监听这些端口,然后我在FD_SET中添加两个套接字,并将它们传递给Select()函数...当套接字准备好读取时,我检查FD_ISSET,看看哪个端口上有消息要读取。 不管怎样,当我连接到8888端口时,构思是成功的,我可以向服务器发送和接收。。。当我在客户端ctrl c时,选择函数再次

  • 问题内容: 我正在为项目使用串行设备,而我要在PC端完成的工作是侦听串行设备发送的命令,解释查询,根据查询运行一些代码,然后传回结果。 老实说,我尝试使用PHP作为侦听器,并且它可以工作,不幸的是,使脚本充当接收器所需的无限循环将CPU负载为25%。因此,这并不是真正的最佳选择。 我现在正在使用cygwin,我想使用linux本机命令创建一个bash脚本。 我可以使用以下方式接收数据: 并发送以下