我目前正在通过 Hartl 工作。在第 5 章中,我将清单 5.27(如下)中的 Hartl 代码添加到我的 spec/requests/static_pages_spec.rb
require 'spec_helper'
describe "Static pages" do
subject { page }
describe "Home page" do
before { visit root_path }
it { should have_selector('h1', text: 'Sample App') }
it { should have_selector('title', text: full_title('')) }
it { should_not have_selector 'title', text: '| Home' }
end
describe "Help page" do
before { visit help_path }
it { should have_selector('h1', text: 'Help') }
it { should have_selector('title', text: full_title('Help')) }
end
describe "About page" do
before { visit about_path }
it { should have_selector('h1', text: 'About') }
it { should have_selector('title', text: full_title('About Us')) }
end
describe "Contact page" do
before { visit contact_path }
it { should have_selector('h1', text: 'Contact') }
it { should have_selector('title', text: full_title('Contact')) }
end
end
当我运行 $ bundle exec rspec spec/requests/static_pages_spec.rb 测试时,终端返回此错误:
Failures:
1) Static pages Home page
Failure/Error: it { should have_selector('title', text: full_title('')) }
NoMethodError:
undefined method `full_title' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x007fb4b44504c8>
# ./spec/requests/static_pages_spec.rb:11:in `block (3 levels) in <top (required)>'
2) Static pages Help page
Failure/Error: it { should have_selector('title', text: full_title('Help')) }
NoMethodError:
undefined method `full_title' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_2:0x007fb4b46a9008>
# ./spec/requests/static_pages_spec.rb:19:in `block (3 levels) in <top (required)>'
3) Static pages About page
Failure/Error: it { should have_selector('title', text: full_title('About Us')) }
NoMethodError:
undefined method `full_title' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_3:0x007fb4b4430290>
# ./spec/requests/static_pages_spec.rb:26:in `block (3 levels) in <top (required)>'
4) Static pages Contact page
Failure/Error: it { should have_selector('title', text: full_title('Contact')) }
NoMethodError:
undefined method `full_title' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_4:0x007fb4b40e57e8>
# ./spec/requests/static_pages_spec.rb:33:in `block (3 levels) in <top (required)>'
Finished in 0.21306 seconds
9 examples, 4 failures
Failed examples:
rspec ./spec/requests/static_pages_spec.rb:11 # Static pages Home page
rspec ./spec/requests/static_pages_spec.rb:19 # Static pages Help page
rspec ./spec/requests/static_pages_spec.rb:26 # Static pages About page
rspec ./spec/requests/static_pages_spec.rb:33 # Static pages Contact page
有任何想法吗?