Rails Capybara不工作

时间:2013-07-01 22:03:19

标签: ruby-on-rails capybara

我正在尝试使用rspec和capybara运行一个简单的测试:

describe "Create" do
  visit new_client_path 

  page.should have_selector('h1', text: "New Client") 
end

然而我收到错误:

undefined local variable or method `visit'

如果我删除访问行,我会收到此错误:

undefined local variable or method `page'

我已将DSL包含在spec_helper文件中。

问题是什么?

由于

2 个答案:

答案 0 :(得分:3)

您似乎忘了将测试放在it区块内:

describe "Create" do
  it "does something" do
    visit new_client_path 
    page.should have_selector('h1', text: "New Client") 
  end
end

答案 1 :(得分:0)

假设您使用的是Rails 3和RSpec,您是否已将规范放在功能而非请求中?如果使用功能目录,则不需要包含DSL。

同时检查您是否拥有最新版本的宝石。

来自https://github.com/jnicklas/capybara

  

将Capybara与RSpec一起使用

     

通过添加以下行来加载RSpec 2.x支持(通常添加到您的   spec_helper.rb文件):

     

要求'capybara / rspec'如果您使用Rails,请将您的Capybara放入   规格/功能中的规格。