【发布时间】:2010-09-30 22:09:41
【问题描述】:
如何通过 Ruby(用于自动化脚本)打开 FireFox 浏览器? 我用
@browser = RSpecSeleniumHelper.connect_browser('/admin/', '*firefox')
但它不起作用。
【问题讨论】:
标签: ruby firefox automation
如何通过 Ruby(用于自动化脚本)打开 FireFox 浏览器? 我用
@browser = RSpecSeleniumHelper.connect_browser('/admin/', '*firefox')
但它不起作用。
【问题讨论】:
标签: ruby firefox automation
你可以用 ruby 启动任何程序:
`firefox http://www.google.com`
or
system("firefox http://www.google.com")
【讨论】:
您可以使用 Watir,因为它还支持 Firefox: http://wtr.rubyforge.org/platforms.html
【讨论】:
您可能需要检查 Selenium Remote Control 是否启动,通常它在端口 4444 上运行。
java -jar selenium-server-xxx.jar
那么你可以使用
@browser = Selenium::Client::Driver.new(
:host => "localhost",
:port => 4444,
:browser => "*firefox", #*iexplore, *firefox3, *safari...
:url => "http://www.google.com/",
:timeout_in_second => 60)
@browser.start_new_browser_session
希望对您有所帮助,您可以通过下载 Selenium RC 找到更多演示
【讨论】:
我在运行这个程序时遇到了两个问题:
如果您从 MacOS 运行 Ruby 应用程序,默认情况下命令 firefox 可能没有正确别名,因此可能会失败而不会在 Ruby 控制台上打印错误。
如果您已经打开了 Firefox 实例,您将收到一条消息“关闭 Firefox - Firefox 副本已打开。一次只能打开一个 Firefox 副本。”
这段代码解决了这两个问题:
system("open -a /Applications/Firefox.app/Contents/MacOS/firefox-bin http://www.google.com http://www.cpap.com")
【讨论】: