ruby-on-rails – 使用Rspec和Capybara设置新的RoR项目
发布时间:2020-12-17 02:18:21 所属栏目:百科 来源:网络整理
导读:我试图在 this tutorial之后学习RoR并且我目前在第3章.如果我逐行跟踪它,该教程工作正常.但是,本教程中使用的命令会禁止生成默认测试.当我试图保留它们并可能在我的项目中使用它时,我总是在某个地方撞墙. 你能告诉我我做错了什么吗? $rails new myproject$c
我试图在
this tutorial之后学习RoR并且我目前在第3章.如果我逐行跟踪它,该教程工作正常.但是,本教程中使用的命令会禁止生成默认测试.当我试图保留它们并可能在我的项目中使用它时,我总是在某个地方撞墙.
你能告诉我我做错了什么吗? $rails new myproject $cd myproject/ $echo "gem 'rspec'" >> Gemfile $echo "gem 'rspec-rails'" >> Gemfile $echo "gem 'capybara'" >> Gemfile $bundle install $bundle --binstubs $rails generate rspec:install $rails generate controller StaticPages home help about 然后我编辑spec / views / static_pages / home.html.erb_spec.rb文件,以测试capybara是否有效: require 'spec_helper' #require 'capybara' #require 'capybara/rails' #require 'capybara/rspec' describe "static_pages/home.html.erb" do it 'should have a right title' do visit '/static_pages/home' page.should have_selector('title',:text => 'Home') end end 显然,在这一点上运行bin / rspec会导致失败.那么,可能会出现失败.其中一次失败的原因更令人担忧: 1) static_pages/home.html.erb should have a right title Failure/Error: visit '/static_pages/home' NoMethodError: undefined method `visit' for #<RSpec::Core::ExampleGroup::Nested_5:0x00000003dfd268> # ./spec/views/static_pages/home.html.erb_spec.rb:7:in `block (2 levels) in <top (required)>' 尚未发现AFAIK是Capybara的一部分的访问方法.取消注释home.html.erb_spec.rb中的三个额外要求不会更改结果中的任何内容. 我有什么想法我做错了吗?或者我应该做得更好? Rails版本:3.2.6 解决方法
将测试放在请求目录而不是视图中.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |