【问题标题】:Capybara + Rspec + Selenium: Page always blank in browserCapybara + Rspec + Selenium:页面在浏览器中总是空白
【发布时间】:2012-02-20 21:28:55
【问题描述】:

我正在尝试使用 Capybara 编写集成测试,但是每次 Selenium 控制的浏览器弹出时,页面都是空白的。此外,对于像page.should have_selector('title') 这样的简单断言,我会收到类似的错误

Failure/Error: page.should have_selector('title')
   expected following output to contain a <title/> tag:
   <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml">
   <head></head>
   <body></body>
   </html>

即页面是空的。

我正在访问一条有效的路径。如果我执行save_and_open_page,页面就在那里。

Gemfile 的相关部分是

group :test, :development do
  gem 'rspec-rails', '~> 2.4'
  gem 'nokogiri'
  gem 'webrat'

  # capybara for javascript testing
  gem 'capybara'

  # launchy allows us to do save_and_launch_page, which is very helpful during testing
  gem 'launchy'
end

该应用使用的是 Rails 3.1.1。我已经完成了bundle install 并添加了

require 'capybara/rails'
require 'capybara/rspec'

致我的spec_helper

注意,这些是 集成 测试,而不是控制器测试 - 我没有错过 render_views

我有其他应用程序可以正常工作,这让我觉得我的配置中缺少某些内容,或者正在使用的特定版本存在问题。

Selenium 正在尝试使用 Firefox,而我使用的是 OS X Snow Leopard,如果这很重要的话。

【问题讨论】:

    标签: ruby-on-rails selenium integration-testing capybara rspec-rails


    【解决方案1】:

    您可能想尝试从 gemfile 中删除 webrat。我相信 webrat 和 capybara 都尝试在 requests 目录中运行测试。

    【讨论】:

    • 奇数。我有另一个项目可以愉快地使用两者。不同的版本,我猜。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    相关资源
    最近更新 更多