直接在2种不同的浏览器中运行脚本

时间:2009-01-14 12:27:09

标签: ruby

我创建了Ruby测试脚本,使用Selenium RC直接在2个浏览器(IE,Firefox)中测试我的Web应用程序。我的脚本运行 - 首先在IE上然后继续在Firefox上然后应该继续并在已经打开的IE浏览器中完成。我的问题是:我无法继续(重新连接)在已打开的IE浏览器中运行我的脚本。我用:

@browser = RSpecSeleniumHelper.connect_browser("URL") 

但它会以新会话打开(它需要保留上一个会话)。

2 个答案:

答案 0 :(得分:1)

是否有特殊原因需要在浏览器中途切换?

我不知道你是如何解决问题的,但似乎最好通过一次在一个浏览器中运行测试来解决。

答案 1 :(得分:1)

我也不确定为什么你需要在浏览器中来回切换。

无论如何,我正在做类似的事情,但我使用的是另一个库。我正在使用“Selenium”宝石。 (gem install selenium)这就是我在你的情况下会做的事情。

@ie_driver = Selenium::SeleniumDriver.new(rc_host, port, "*iexplore", url, 1000)
@ie_driver.start 
@ie_driver.whatever //Test code
@ff_driver = Selenium::SeleniumDriver.new(rc_host, port, "*firefox", url, 1000)
@ff_driver.start  
@ff_driver.whatever //Test code
@ff_driver.stop
@ie_driver.whatever //Continue test code with IE
@ie_driver.stop

总之,虽然我对你的selenium库并不熟悉,但通常我会创建2个R / C驱动程序实例,这样我就不必中断会话了。