我正在使用capybara进行集成测试,看起来会有一些错误,会话传递给我的控制器以进行测试的“登录”部分。通过浏览器时登录工作正常,但在水豚中失败。
def integration_sign_in(user)
visit signin_path
puts "Pre email: " + user.email
puts "Pre password: " + user.password
# When I use these, everything works correctly
fill_in "session_email", :with => user.email
fill_in "session_password", :with => user.password
# When I use these, the session is wrong
# The params[:session][:email] on the server has the password field
# The params[:session][:password] on the server is nil
#fill_in :email, :with => user.email
#fill_in :password, :with => user.password
click_button "Sign in"
end
我可以不使用符号进行水豚测试吗?我的猜测是,在失败的情况下,两个字段都填写了第一个字段(电子邮件),这就是为什么会话只有电子邮件的值,而且该值是密码。
答案 0 :(得分:1)
看起来最新版本的水豚不能正确接受符号。它仅在输入字段的完整字符串时有效。