неопределенная локальная переменная или метод ‘new_password_reset’

#ruby-on-rails #ruby #ruby-on-rails-4

#ruby-on-rails #ruby #ruby-on-rails-4

Вопрос:

 describe "PasswordResets" do
  before(:each) do 
    visit new_password_reset
  end

  it "should contain the title" do
     page.should have_selector("title", text: "Password reset")
  end

end
 

Сбой / ошибка: visit new_password_reset
Ошибка имени:
неопределенная локальная переменная или метод `new_password_reset’ для #

Когда я выполняю рейк-маршруты в своем терминале, я получаю следующее.

 new_password_reset GET    /password_resets/new(.:format)      password_resets#new
 

Почему я получаю неопределенную локальную переменную при запуске моих тестов, хотя маршрут присутствует.

Комментарии:

1. Попробуйте использовать new_password_reset_path вместо

2. @wildandjam?? не могли бы вы объяснить подробнее.

3. Его it заявление Rspec, а не if

4. @NikitaChernov: То же самое, в нем говорится, что new_password_resest_path не определен.

5. Это определенно не if проблема, it это правильный.

Ответ №1:

либо укажите путь напрямую, например

 visit '/password-reset'
 

или
укажите метод path, который является « new_password_reset_path и НЕ ТОЛЬКО» new_password_reset

 visit new_password_reset_path