首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们能否在同一网络中连接的两个不同机器的两个节点上使用Selenium GRID 2运行Selenium测试?

我们能否在同一网络中连接的两个不同机器的两个节点上使用Selenium GRID 2运行Selenium测试?
EN

Stack Overflow用户
提问于 2017-09-26 14:58:58
回答 1查看 126关注 0票数 0

我想使用SELENIUM GRID2在同一网络上在两个不同的机器(两个不同的节点)上运行测试。

当我运行测试时,测试在一个节点中运行(首先向集线器注册节点)。

在- http://11.111.111.11:4444中启动网格集线器

在同一网络中注册来自两台不同机器的两个节点。

节点1:

代码语言:javascript
复制
xxxx://11.111.111.11:4444/grid/register -port 5557

节点2:

代码语言:javascript
复制
xxxx://11.111.111.11:4444/grid/register -port 5558

最后在下面提到的代码中传递/提供了hub URL

代码语言:javascript
复制
String hubURL = "xxxx://11.111.111.11:4444/wd/hub";

driver = new RemoteWebDriver(new URL(hubURL), caps);

但是测试在一个节点中运行(首先向集线器注册节点)。

测试没有在两个节点中执行/运行。

请帮我解决这个问题

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-27 04:19:48

将测试分配给节点是网格的一个属性。只想运行一个特定节点的测试会得到什么好处?

尽管如此,您基本上可以使用以下选项将测试路由到特定节点

  1. 启动节点时,基本上将其maxSession设置为1,这样,节点一次只能提供一个测试。这是您需要通过nodeConfig参数在节点级别传递的配置,将selenium节点指向JSON配置文件。有关更多细节,请参阅我的博客这里
  2. 第二种方法有点复杂,需要您构建一些定制。您需要使用自定义能力匹配器,您需要将它插入到网格中,然后通过所需的功能对象,您可以传递自定义功能,并且网格将始终将您的测试路由到该特定节点。它是一种创建与测试关联的节点的方法,当您试图调试仅发生在特定节点上的故障时,它尤其有用。您可以在我的博客文章这里中阅读有关使用自定义功能的更多信息。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46429856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档