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

转发新会话时出错:Selenium Grid 2

帅颖逸
2023-03-14
问题内容

Selenium Server从这里选择了最新的2.45.0
。遵循文档并使用以下命令启动集线器

java -jar selenium-server-standalone-2.45.0.jar -role hub -hubConfig HubConfigFile.json

并且,JSon文件内容为:

{
  "host": 10.5.0.21,
  "port": 4444,
  "newSessionWaitTimeout": -1,
  "servlets" : [],
  "prioritizer": null,
  "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher",
  "throwOnCapabilityNotPresent": true,
  "nodePolling": 5000,
  "cleanUpCycle": 5000,
  "timeout": 300000,
  "browserTimeout": 0,
  "maxSession": 5,
  "jettyMaxThreads":-1
}

而且,唯一Node

java -jar selenium-server-standalone-2.45.0.jar -role node -nodeConfig DefaultNode.json

{
  "capabilities":
      [
        {
          "browserName": "*firefox",
          "maxInstances": 5,
          "seleniumProtocol": "Selenium"
        },
        {
          "browserName": "*googlechrome",
          "maxInstances": 5,
          "seleniumProtocol": "Selenium"
        },
        {
          "browserName": "*iexplore",
          "maxInstances": 1,
          "seleniumProtocol": "Selenium"
        },
        {
          "browserName": "firefox",
          "maxInstances": 5,
          "seleniumProtocol": "WebDriver"
        },
        {
          "browserName": "chrome",
          "maxInstances": 5,
          "seleniumProtocol": "WebDriver"
        },
        {
          "browserName": "internet explorer",
          "maxInstances": 1,
          "seleniumProtocol": "WebDriver"
        }
      ],
  "configuration":
  {
    "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
    "maxSession": 5,
    "port": 5555,
    "host": 10.5.0.161,
    "register": true,
    "registerCycle": 5000,
    "hubPort": 4444,
    "hubHost": 10.5.0.21
  }
}

到目前为止,一切看起来都很不错。在这里注册后,请查看控制台的屏幕截图

而且,当我尝试通过以下方式开始测试时,问题就开始了:

DesiredCapabilities capabilities = DesiredCapabilities.InternetExplorer();
capabilities.SetCapability("browserName", "internet explorer");
capabilities.SetCapability("platform", "XP");
capabilities.SetCapability("version", "8.0");
//capabilities.SetCapability("seleniumProtocol", "WebDriver");

Driver = new RemoteWebDriver(new Uri("http://10.5.0.21:4444/wd/hub"), capabilities);

而且,它抛出:

WebDriver.dll中发生类型’System.InvalidOperationException’的异常,但未在用户代码中处理

附加信息:找不到新会话时转发错误:功能[{browserName = internet Explorer,版本= 8.0,平台= XP}]

查看屏幕截图 屏幕截图1

屏幕截图2

屏幕截图3

我必须说Selenium Grid上的文档非常令人沮丧 。我花了整整一天的时间试图找出问题所在。

我想念什么吗?


问题答案:

经过大量研究,我能够解决此问题。命令行参数错误,因为我使用的是WebDriver我必须替换

java -jar selenium-server-standalone-2.45.0.jar -role node -nodeConfig DefaultNode.json

java -jar selenium-server-standalone-2.45.0.jar -role webdriver -nodeConfig DefaultNode.json -Dwebdriver.ie.driver=.\IEDriverServer.exe

确保我也将驱动程序可执行文件设置在正确的目录中。



 类似资料:
  • 我使用了最新的Selenium服务器,从这里开始是2.45.0。遵循文档并使用以下命令启动中心 并且,JSon文件内容是: 并且,唯一具有 在这之前,一切看起来都很好。在此处注册后,请查看控制台的屏幕截图 而且,当我试图开始测试时,问题就开始了: 它抛出: “系统”类型的例外。WebDriver中发生“InvalidOperationException”。dll,但未在用户代码中处理 附加信息:无

  • 我最近安装了一个用于开发测试的selenium网格环境。然而,我们面临以下错误: 转发新会话时出错,无法找到:功能{browserName:chrome,chromeOptions:{args:[--headless,--no sandbox],二进制:,首选项:{plugins.always\u open\u pdf\u externally:true},w3c:false},loggingPr

  • 我尝试从页面使用Selenium Grid Extras:https://github.com/groupon/Selenium-Grid-Extras 我成功地在我的私人机器上使用了它。配置之后,我运行了命令“java-jar Selenium Grid Extras jar.jar”(https://ibb.co/j4wZPH),我可以通过转到地址来查看节点http://localhost:4

  • 我的selenium配置有问题。我正在尝试在iOS和Android上自动化Selenium测试。 iOS测试独立于iOS驱动程序正常运行。Android测试也在独立正常运行。 但是当我想运行iOS和Android时,我遇到了问题! 对于我的Android测试,我正在运行这个命令,一切都很好: 但是,当我想要集成iOS测试时,我会按照以下指南更改此命令的端口:http://selendroid.io

  • 操作系统:Linux Selenium版本:**3.12**浏览器:Chrome V66,chromedriver 2.38 下面是我的网格配置:Hub(Linux)使用Selenium Grid Jenkins插件在Jenkins机器(https://Jenkins.us.abc.edu)上运行。 现在我正在尝试用json注册节点,如下所示,并开始节点:java-jar-dwebdriver.c

  • OS:LinuxSelenium版本:**3.12**浏览器:ChromeV66, chromeDrive2.38 以下是我的网格配置:集线器(Linux)运行在詹金斯机器(https://jenkins.us.abc.edu)上,带有硒网格詹金斯插件。 现在,我尝试使用json注册我的节点,如下所示,并启动节点:java-jar-Dwebdriver。铬。驱动程序=chromedriver se