javascript rspec测试超时

javascript rspec测试超时,javascript,ruby-on-rails,ruby,testing,Javascript,Ruby On Rails,Ruby,Testing,我正在使用capybara和rspec测试我的rails应用程序。确切地说,我测试了一些javascript代码。事实上,运行测试会启动firefox(我如何配置它?)。首先,firefox浏览器中的页面加载很长,然后我发现这个错误 Failure/Error: visit root_path Net::ReadTimeout: Net::ReadTimeout 如何修复此问题?您的firefox浏览器正在启动,因为Capybara正在使用默认的web驱动程序(sele

我正在使用
capybara
rspec
测试我的rails应用程序。确切地说,我测试了一些javascript代码。事实上,运行测试会启动firefox(我如何配置它?)。首先,firefox浏览器中的页面加载很长,然后我发现这个错误

Failure/Error: visit root_path
     Net::ReadTimeout:
       Net::ReadTimeout

如何修复此问题?

您的firefox浏览器正在启动,因为Capybara正在使用默认的web驱动程序(
selenium
)。 例如,如果您不想加载浏览器,可以将capybara
javascript驱动程序切换到
webkit
。请考虑了解如何安装WebKIT驱动程序。 关于这个
Net::ReadTimeout
我认为您需要在spec\u helper中为水豚指定正确的主机和端口:

spec_helper.rb:
# Capybara.server_port = 3001
Capybara.host = 127.0.0.1 # Try to experiment with this option !

Capybara.javascript_driver = :webkit # or :selenium
Capybara.current_driver = :webkit # or :selenium
Capybara.run_server = true #Whether start server when testing
# Capybara.default_selector = :css #:xpath #default selector , you can change to :css
Capybara.default_wait_time = 3 #When we testing AJAX, we can set a default wait time
Capybara.ignore_hidden_elements = false #Ignore hidden elements when testing, make helpful when you hide or show elements using javascript
如果您的
127.0.0.1
地址有问题,可能是由于shell中的代理配置错误。尝试在地址
%your\u IP\u address%


如果您在浏览器中使用Selenium web驱动程序,查看主题有助于了解如何设置chrome浏览器而不是firefox。也许,这一点在一个大的图片,这需要大量的时间下载到。
尝试从根路径视图中删除所有图片。

谢谢,我将检查此项并返回给您。确实,我已成功,但仍需要20秒才能运行一些简单的测试,正常吗?我如何提高速度?你可以尝试宝石,如,或减少这一时间。