[英]rspec-rails gem exec after dispaly error
我创建了一个static_pages_controller.rb
我已经创建了一个功能
def home
end
之后,我创建了一个视图home.html.erb,我刚刚编写完成了此“示例应用程序”
之后,我安装了gem rspec-rails并创建了static_pages_spec.rb
require 'spec_helper'
describe "StaticPages" do
describe "Home page" do
it "should have the content 'Sample App'" do
visit '/static_pages/home'
page.should have content('Sample App')
end
end
end
我已经在终端上运行了此命令
$ bundle exec rspec spec/requests/static_pages_spec.rb
F
Failures:
1) StaticPages Home page should have the content 'Sample App'
Failure/Error: visit '/static_pages/home'
NoMethodError:
undefined method `visit' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0xa3a7870>
# ./spec/requests/static_pages_spec.rb:5:in `block (3 levels) in <top (required)>'
Finished in 0.00248 seconds
1 example, 1 failure
Failed examples:
rspec ./spec/requests/static_pages_spec.rb:4 # StaticPages Home page should have the content 'Sample App'
Randomized with seed 57243
有什么问题吗? 以此来请我
visit
是Capybara DSL的一部分。 虽然它过去通常会自动加载以用于spec/requests
测试,但在此提交中已更改为改为自动加载以用于spec/features
测试。
您可以将规范移至spec/features
,它应该可以工作,或者如果您想保留规范,则必须在spec_helper.rb
明确包含spec_helper.rb
Capybara::DSL
。
这是假设您已安装并需要Capybara。
在您的Gemfile
您应该具有:
gem 'capybara'
并且在您的spec_helper.rb
您应该具有:
require 'capybara/rspec'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.