繁体   English   中英

显示错误后rspec-rails gem exec

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM