通过selenium远程webdriver运行ie / firefox浏览器的两个实例

时间:2015-03-11 07:18:44

标签: selenium selenium-webdriver selenium-grid remotewebdriver

我的方案是,我将启动一个浏览器实例并执行一些操作,然后在不关闭当前浏览器的情况下打开相同类型的新浏览器,并且需要进行验证。

Webdriver driver = driverInitialize.getDriver();
//Perform some operations
Webdriver driver2 = driverInitialize.getDriver();
//Perform some operations

问题只出在firefox和IE上,因为浏览器的第二个实例在第一个实例发生超时之前没有启动但是同样适用于chrome浏览器。在启动节点和集线器时,对于firefox和IE,它说" WARN - 未指定Max实例。即使在相应节点中指定了最大实例后,也使用default = 1" 。用于启动集线器和节点的命令如下所示

Hub : java -jar selenium-server-standalone-2.44.0.jar -role hub -port 4444

Firefox Node : java -jar selenium-server-standalone-2.44.0.jar -role node -hub http://127.0.0.1:4444/grid/register -port 5553 -browser browserName=firefox,maxInstance=5 -Dwebdriver.version="30"

IE Node : java -jar selenium-server-standalone-2.44.0.jar -role webdriver -hub http://127.0.0.1:4444/grid/register -port 5555 browserName=ie,maxInstance=5 -Dwebdriver.ie.driver="C:\IEDriverServer.exe"

Chrome Node : java -jar selenium-server-standalone-2.44.0.jar -role webdriver -hub http://127.0.0.1:4444/grid/register -port 5555 browserName=chrome maxInstance=5 -Dwebdriver.chrome.driver="C:\chromedriver.exe" 
  

浏览器的版本

     

Chrome :40.0.2214.115; Firefox :34.0; IE :10.0.9200.17228;

1 个答案:

答案 0 :(得分:1)

我认为你应该看看这个堆栈溢出问题: Selenium Grid: MaxSessions vs MaxInstances

最大会话将覆盖最大实例,因此您需要设置两者。 如果max sessions = 1且max instances = 10,则只允许运行1次测试。在这种情况下检查您的配置。

您还可以在Grid 2 wiki上看到这些选项: https://code.google.com/p/selenium/wiki/Grid2

编辑** 这已移至:https://github.com/SeleniumHQ/selenium/wiki/Grid2