2012-06-12 46 views
1

此功能工作了一下,然后停止工作。使用黄瓜和设计登录失败,没有消息

Background: 
    Given a user is logged in 
    Then I should see "Signed in successfully." 

随着

Given /^a user is logged in$/ do 
    @user = FactoryGirl.create(:user) 
    @user.confirm! 
    visit new_user_session_path 
    fill_in 'Email', :with => @user.email 
    fill_in 'Password', :with => @user.password 
    click_on 'Sign in' 
end 

Then /^I should see "(.*?)"$/ do |message| 
    page.should have_content(message) 
end 

Given a user is logged在通行证但Then I should see "Signed in successfully."失败,错误expected there to be content "Signed in successfully."它保留在页面的登录中。

任何人都有一个想法可能是什么问题?

+1

请注意,我不喜欢在功能描述中过于具体,因为客户端并不真正在意细节。我宁愿在台阶上。 –

+0

会话控制器中的'new'操作可能无法对用户进行身份验证,从而重新呈现登录页面 – cdesrosiers

+0

身份验证适用于浏览器。这绝对是一些步骤。谢谢! –

回答

1

解决!

我改变

click_on 'Sign in' 

click_button 'Sign in' 

这很奇怪的是水豚并没有抱怨没有找到一个Sign in点击。

感谢大家的意见和解答!

0

尝试将launchy添加到您的测试gemspec组,并在点击“登录”后调用save_and_open_page - 这应该有助于您了解您的登录过程是否有任何问题。

+0

我试过了,我在没有消息的情况下登录表单。 –

+1

如果您没有错误消息,那么这意味着会话控制器在成功登录后不会将用户重定向到合适的操作,或者在登录失败时不会显示错误消息。 – kikito