Ruby on rails Capybara Ruby On Rails登录
我一直试图让用户登录能够工作,但没有运气。请帮助我更好地理解水豚和rspec,我对这方面还比较陌生 规格/功能/登录\u规格.rbRuby on rails Capybara Ruby On Rails登录,ruby-on-rails,tdd,capybara,bdd,rspec-rails,Ruby On Rails,Tdd,Capybara,Bdd,Rspec Rails,我一直试图让用户登录能够工作,但没有运气。请帮助我更好地理解水豚和rspec,我对这方面还比较陌生 规格/功能/登录\u规格.rb # User Behavior describe User do it "Can login" do visit root_path click_on "Login" expect(page).to have_text("Login to your account") within ".simple_form" do
# User Behavior
describe User do
it "Can login" do
visit root_path
click_on "Login"
expect(page).to have_text("Login to your account")
within ".simple_form" do
fill_in "Email", with: "user@test.com"
fill_in "Password", with: 'password'
click_on "Log In"
subject.save!
end
end
end
designe/sessions/new.html.erb
<div class="container content">
<div class="row">
<div class="col-md-4 col-md-offset-4 col-sm-6 col-sm-offset-3">
<div class="reg-page">
<div class="reg-header">
<h2>Login to your account</h2>
</div>
<%= simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
<div class="input-group margin-bottom-20">
<%= f.input :email, autofocus: true, class: "form-control" %>
</div>
<div class="input-group margin-bottom-20">
<%= f.input :password, autocomplete: "off", class: 'password form-control' %>
</div>
<div class="row">
<div class="col-md-6">
<% if devise_mapping.rememberable? -%>
<div class="field">
<%= f.check_box :remember_me %>
<%= f.label :remember_me %>
</div>
<% end %>
</div>
<div class="col-md-6">
<div class="actions">
<%= f.button :submit, "Log In", class: 'btn btn-u-lg btn-u' %>
</div>
</div>
</div>
<hr>
<% end %>
<%= render "devise/shared/links" %>
</div>
</div>
</div><!--/row-->
</div>
gemfile
group :development, :test do
gem 'byebug'
gem 'rspec-rails'
end
group :test do
gem 'capybara'
end
spec_helper.rb
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'capybara/rspec'
我明白了
需要有一个用户已经在数据库中创建的水豚参考
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'capybara/rspec'