Selenium GRID2 + yml配置文件+多个遥控器

时间:2011-12-05 09:42:16

标签: selenium webdriver selenium-grid

使用Selenium GRID2,您如何设置多个遥控器? 我们可以使用2台机器(我们称之为“machine01”和“machine02”),安装好的浏览器(其中一些安装在特定位置)。我们希望这两个注册到GRID2 HUB来运行测试用例。

我有一台需要充当HUB的第三台机器,我用它开始:

java -jar selenium-server-standalone-2.14.0.jar -role hub -grid1Yml grid_configuration.yml

但是如何在yml配置文件中设置不同的遥控器? 在我的本地计算机调查期间,我使用了这个配置:

hub:
port: 4444
remoteControlPollingIntervalInSeconds: 180
sessionMaxIdleTimeInSeconds: 300
environments:
   - name:    "Firefox 6.0 on Windows"
     browser: "*firefox C:\\Program Files\\Mozilla Firefox 6.0\\firefox.exe"
   - name:    "Firefox 7.0 on Windows"
     browser: "*firefox C:\\Program Files\\Mozilla Firefox 7.0\\firefox.exe"
   - name:    "Internet Explorer 8"
     browser: "*iehta"
   - name:    "Google Chrome on Windows"
     browser: "*googlechrome"
   - name:    "Safari 5.1 on Windows"
     browser: "*safariproxy C:\\Program Files\\Safari\\Safari.exe"

在遥控器上我运行此命令:

java -jar selenium-server-standalone-2.14.0.jar -role rc -hub http://localhost:4444/grid/register -port 5555 -browser "browserName=Firefox 6.0 on Windows,maxInstances=1" -browser "browserName=Firefox 7.0 on Windows,maxInstances=1" -browser browserName="Internet Explorer 8,maxInstances=1" -browser browserName="Google Chrome on Windows,maxInstances=1" -browser browserName="Safari 5.1 on Windows,maxInstances=1"

既然我有多台机器可用作遥控器,我如何指定每台机器可用以及每台机器的浏览器位置?

谢谢!

1 个答案:

答案 0 :(得分:2)

  1. 设置不同的遥控器不是通过yml文件。集线器使用YML。您在YML文件中为浏览器指定的路径将用于所有RC计算机。因此,如果在grid_cofig.yml文件中为firefox浏览器指定C:/programfiles/firefox/firefox.exe,则firefox应该在所有RC机器的此路径中。

  2. 要从多台计算机注册RC,您需要在两台计算机上运行RC命令。您应该将-hub值从localhost更改为集线器的实际IP地址。