Я начинаю рубин на рельсе, и я пытаюсь использовать rspec для проверки моего контроллера. Но у меня есть некоторые проблемы, чтобы посетить мою страницу в спецификации. Вот мой user_spec.rb:Как посетить страницу с именем пользователя, rspec
#!/bin/env ruby
# encoding: utf-8
require 'user'
require 'rails_helper'
describe User do
it "login sucess" do
visit "welcome/index"
fill_in "session_user_id", :with => "1992111-1234"
fill_in "session_password", :with => "sa1234"
click_button "ログイン"
end
it "main menu" do
visit "welcome/mainmenu"
end
end
Когда я бегу спецификации, у меня есть эта ошибка:
Я не могу пройти через shop_no, потому что я не имею CURRENT_USER: <%= current_user.shop_no%>
. Итак, сначала я должен войти в систему, но я не знаю, как работать с rspec. Я пытался логин (создающих пользователя) в моей спецификации/user.rb:
#!/bin/env ruby
# encoding: utf-8
require "rails_helper"
def login(user)
visit root_path
fill_in "session_user_id", :with => "1992111-1234"
fill_in "session_password", :with => "sa1234"
click_button "ログイン"
end
Но я не знаю, как работать с этим. Так что, пожалуйста, помогите мне!
Обновить страницу Логин:
<div class="medium-4 medium-centered row" style="padding: 5px">
<div class="medium-10 medium-centered columns">
<% if flash[:notice] %>
<div class="notice">
<%= flash[:notice] %>
</div>
<% end %>
<%= form_for(:session, url: login_path) do |f| %>
<%= f.label(:User_id, 'User ID') %>
<%= f.text_field :user_id %>
<%= f.label :Password %>
<%= f.password_field :password %>
<center>
<%= f.submit "ログイン", class: "button [tiny large]", :style => "border-radius: 0px 0px" %>
</center>
<% end %>
</div>
</div>
кажется, что ваша ошибка в 'приложение/просмотров/приветствия/mainmenu.html.erb' так Пожалуйста, пост' приложение/просмотров/приветственное/mainmenu.html.erb ' –
в этом представлении может быть вызов метода shop_no, который не определен, пожалуйста, проверьте, что также –
@Rajarshi Das, я добавил свое mainmenu, и я вызываю shop_no в <% = current_user.shop_no%>. Так что я думаю, что должен сначала войти в spec – mayoneQD