2010-01-22 40 views

回答

0

我想最好的方法是遍历基于当前操作系统的文件系统,并找到你想要的浏览器的可执行文件。

也许你可以采取Launchy代码,并让它做你想做的? :)
http://copiousfreetime.rubyforge.org/launchy/

Launchy是火灾推出跨平台应用程序的辅助类和忘记 方式。 目前只支持启动浏览器。

Launchy.open("http://www.ruby-lang.org/")

0

在OS X上,这个工作对我来说:

`open #{url}` 
2

你有没有考虑使用的Watir?它为浏览器提供了一个抽象接口,用于测试IE浏览器(默认),Firefox(firewatir),Chrome(ChromeWatir)和Safari(SafariWatir)我不确定,我不认为他们已经使用Safari for Windows)。

你基本上是做一个方法或类,它需要浏览器和你想要加载的URI,并使用相关的Watir类加载它们。然后创建调用相关方法的Rake任务。这样做的好处是你无需弄清楚Firefox的位置,如果它正在运行或者没有运行,就会以不同的方式调用它。

我还没有做过任何Watir的东西 - 我被转移到Celerity/Culerity进行浏览器测试 - 但即使您没有使用它进行测试,您也应该可以使用它来启动浏览器从Ruby到至少包括Windows和Mac,可能还有Linux。

+0

@ss, 为了运行测试,您可以在您的测试中添加一个环境变量,如WATIR_BROWSER =“firewatir”和代码中的case语句,它使用watir创建正确的浏览器。 然后有一个rake任务,它用每个不同的变量调用你的主要测试任务。你会得到多个合格/不合格读数,但至少你可以用一个耙子任务运行它。 – 2010-01-22 22:52:22

相关问题