当前位置: 首页 > 知识库问答 >
问题:

在Selenium Grid中使用SikuliliLibrary进行机器人框架测试?

淳于星宇
2023-03-14

有人提到要工作吗?我已经设置了网格https://github.com/sterodium/selenium-grid-extensions网格设置本身似乎没问题,但当我实际运行使用sikulilibrary关键字的测试时,我得到了以下错误;Java语言lang.NoClassDefFoundError:无法初始化类组织。西库利。剧本Finder$Finder2。

我的网格设置:

  • 机器人框架3.1.2

集线器启动:java-cpselenium-server-standalone-3.14.0.jar;extension-proxy-1.0.jarorg.openqa.grid.selenium.GridLauncherV3角色集线器-hubConfighub.json

中心json:

{
  "port": 4444,
  "newSessionWaitTimeout": -1,
  "servlet": "io.sterodium.extensions.hub.proxy.HubRequestsProxyingServlet",
  "capabilityMatcher": "io.sterodium.extensions.capability.CustomCapabilityMatcher",
  "prioritizer": null,
  "throwOnCapabilityNotPresent": true,
  "nodePolling": 5000,
  "cleanUpCycle": 5000,
  "timeout": 1800,
  "browserTimeout": 70000,
  "maxSession": 5,
  "debug": false,
  "jettyMaxThreads": -1
}

节点启动:java-Dwebdriver.gecko.driver=geckodriver.exe-cpselenium-server-standalone-3.14.0.jar;all-node-extensions-1.0.jarorg.openqa.grid.selenium.GridLauncherV3角色节点-nodeConfignode.json

节点。json:

{
  "capabilities":
  [
    {
      "browserName": "firefox",
      "maxInstances": 5,
      "seleniumProtocol": "WebDriver",
      "extension.sikuliCapability": true
    }

  ],
  "host": "X.X.X.X",
  "port": 5561,
  "maxSession": 10,
  "register": true,
  "registerCycle": 5000,
  "hub": "http://X.X.X.X:4444/hub/wd/",
  "nodeStatusCheckTimeout": 5000,
  "nodePolling": 5000,
  "role": "node",
  "unregisterIfStillDownAfter": 60000,
  "downPollingLimit": 2,
  "debug": false,
  "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
  "servlets" : ["io.sterodium.extensions.node.SikuliExtensionServlet","io.sterodium.extensions.node.upload.FileUploadServlet","io.sterodium.extensions.node.download.FileDownloadServlet"],
  "withoutServlets": [],
  "custom": {}
}

共有1个答案

蒲昊
2023-03-14

你似乎有一些版本混淆:

<代码>组织。西库利。剧本Finder$Finder2是SikuliX版本1.1.4,

但是您有robotframework SikuliLibrary 1.0.8(使用SikuliX 1.1.4的当前版本是1.4)

请参阅:https://github.com/rainmanwy/robotframework-SikuliLibrary

(来自SikuliX的RaiMan)

 类似资料:
  • 所以,我正在进行一个robotframework测试项目,目标是并行运行多个测试套件。为此,选择了pabot作为解决方案。我正试图实施它,但收效甚微。 我的问题是:在安装了Pabot(我可以说,我是通过克隆项目并运行“setup.py install”来完成的,而不是使用pip,因为我背后的公司代理已证明是我无法克服的障碍),我在项目树中创建了一个新目录,将一些套件移到了那里,然后运行: pabo

  • 我正在尝试设置一个容器,以便在Chrome上使用RobotFramework进行测试。 但是当我运行容器时,我总是得到一个WebDriverException。我已经找过了,但找不到任何对我有效的修复方法。 这是我的Dockerfile

  • CalculatorOperationSmockTest.java 我成功地使用测试了上面的,但是我是Mockito框架的新手,当我尝试运行文件时,我得到了下面的错误,我不知道如何解决它

  • 我想用机器人框架实现selenium网格。我已经配置了selenium网格集线器和两个节点,但是我不知道如何在此设置后触发并行测试用例执行,在哪里使用python语言和selenium 2库关键字更新机器人框架中的线程数和并行测试执行设置?此外,在哪里分配集线器url来触发执行?请建议可能的解决方案。注意:我们在脚本中使用selenium 2库关键字,而不是web驱动程序关键字,因此我无法使用“w

  • 问题内容: 我正在运行带有多个Chrome实例的selenium网格。selenium网格是2个带有多个节点的机器(窗口)。测试是从连接到网格的另一台机器执行的。为了能够使用远程调试功能,我需要从正在执行的计算机(可以读取会话主机和驱动程序debugUrl)连接到其他计算机,最后是chrome实例。 但是chrome拒绝localhost以外的任何东西。 我只能找到解决方案,当人们只有一个实例时,

  • 我昨天问了一个包括这个的问题,但它似乎是一个独立的问题。我已经坐下来开始实现一个服务类,我将使用该服务类从控制器中抽象业务逻辑,并使用EF6映射到特定的模型和数据交互。 问题是我自己已经遇到了障碍,因为我不想在存储库中抽象EF(它仍然可以在服务之外用于特定的查询等),并且希望测试我的服务(将使用EF上下文)。 我想问题是这样做有意义吗?如果是这样,那么在IQueryable引起的泄漏抽象和Ladi