Rspec Ruby on rails教程

时间:2014-04-26 04:25:25

标签: ruby-on-rails-4 rspec2 railstutorial.org

期待(页面).to have_title

页面是什么,它为页面表示未定义的局部变量/方法?

以下是我看到的错误。

  

E:\ Users \ dheeraj \ Desktop \ rails_projects \ sample_app> rspec spec /   ←[31mF←[0米←[32米。←[0米←[32米。←[0米←[32米。←[0米

故障:

  

1)StaticPagesController GET&#39; home&#39;应该有正确的标题        ←[31mFailure /错误:←[0m←[31mexpect(page).to have_title(&#34; Home&#34;)←[0m        ←[31mNameError←[0米:          ←[31m **未定义的局部变量或方法page' for #<RSpec::Core::Example Group::Nested_1::Nested_1:0x2e70778>←[0m** ←[36m # ./spec/controllers/static_pages_controller_spec.rb:13:in 块(3 l evels)在&#39;←[0m

     

在0.21701秒完成←[31m4例子,1失败←[0m

     

失败的例子:

     

←[31mrspec./spec/controllers/static_pages_controller_spec.rb:11←[0m   ←[36m#Stat icPagesController GET&#39; home&#39;应该有权利   标题←[0米

     

随机种子63847

请帮助我理解并解决这个问题。

1 个答案:

答案 0 :(得分:0)

Capybara使用页面来处理请求规范。我认为您错误地认为您也可以在控制器规格中使用页面。页面用于确定您当前所在的页面。

我认为这是您正在寻找的示例规范:

规格/请求/ static_pages_spec.rb

it "should have the right title" do
  visit '/static_pages/home'
  expect(page).to have_title("Ruby on Rails Tutorial Sample App | Home")
end