Как провести интеграционное тестирование в Rails 3?

Я пытался использовать код из RailsGuides и другой код, который нашел в Google, но ничего не работает.

Как выполнить простой интеграционный тест в Rails 3 с помощью Test::Unit? Как сделать так, чтобы сеанс сохранялся в HTTP-запросах?

Следующий код не работает, потому что Expected response to be a <:success>, but was <302>. Я думаю, это потому, что сеанс потерян после почтового запроса.

class UserFlowsTest < ActionDispatch::IntegrationTest
  fixtures :all

  test "client can get client dashboard" do
    post '/login', :login=> users(:client).login, :password => 'thepassword' 
    get '/dash'    
    assert_response :success    
  end

end

Работа в Rails 3.07.

Спасибо.


person B Seven    schedule 03.10.2011    source источник
comment
Можешь выложить код своего контроллера?   -  person rdvdijk    schedule 03.10.2011


Ответы (1)


Оказывается, приведенный выше код правильный.

Я изменил часть кода проверки пользователя, вызвав перенаправление на форму входа, когда я этого не хотел. Вот почему ответ был 302 (перенаправление).

person B Seven    schedule 03.10.2011