0

我的环境:

  • Hudson -> 带有 selenium 网格插件 - 安装在 linux 机器上
  • Hudson -> 有 4 台机器 ( 1 linux , 3 Windows ) 作为节点
  • TestCases -> MyTestCases 在 TestNG 中

在 Hudson 服务器中,我检查了 selenium 控制台http://localhost:4444/console。它显示了使用随机端口号注册为 RC 的节点机器。我运行测试(测试被配置为另一个作业)。测试在任何一台机器/RC 上运行。

但我想在特定环境 Machine 1 / Machine 3 上执行测试。我怎样才能做到这一点?我必须如何更改服务器上 selenium-grid 上的配置文件才能执行此操作?

4

3 回答 3

2

如果您的机器提供不同的环境,只需在 grid_configuration.yml 文件中声明不同的环境,然后让您的客户端请求这些环境。

于 2011-08-11T13:27:59.050 回答
0

在 Selenium 1.0 中没有开箱即用的方法来做到这一点。Hub 可以将命令传递给任何已注册的 RC。有解决方法

  • 简单的方法 - 仅从您要用于执行的机器上注册 RC。

  • 更难的方法 - 在您尝试执行脚本的 RC 机器中,使用不同的名称启动浏览器。如果您现在使用 *firefox,请将其更改为 FirefoxForWindows 或类似的东西。浏览器列表将在网格控制台中。在内部,两者都将仅在 Firefox 浏览器上开始测试。现在您将拥有 3 个支持 *firefox 浏览器的 RC 和一个支持 FirefoxOnWindows 浏览器的 RC。现在将传递给测试的浏览器名称从 *firefox 更改为 FirefoxOnWindows。Hub 将看到只有一台机器具有该配置,并将命令单独传递给该 RC。

于 2011-08-11T13:20:04.107 回答
-1

如果您使用 Selenium-1.0 进行测试。以下链接将有所帮助。 http://selenium-grid.seleniumhq.org/run_the_demo.html

在链接中提到了如何在将 RC 注册到集线器时为 RC 指定特定名称。

并使用代码如何连接到特定的环境。在枢纽

于 2011-08-11T11:05:05.977 回答