我尝试将表单数据从黄瓜测试发送到控制器方法。
我有一个登录表格&密码字段和提交按钮
表格视图:
<%= text_field_tag 'login', id: 'login-input' %>
<%= password_field_tag 'password', nil, id: 'password-input' %>
<%= submit_tag 'Login', id: 'submit-credentials' %>
在黄瓜步骤中,我以该形式输入值(登录字段未显示,但相似)。
Then(/^I press "password-input"$/) do
find("#password-input").click
end
Then(/^I enter "myPassword" into the "password-input"$/) do
find("#password-input").text("myPassword")
end
所以现在设置了登录名和密码值。
然后我按提交按钮
And(/^I press "submit-credentials"$/) do
find("#submit-credentials").click()
end
我的身份验证方法被称为,但其参数为空。
当我在网页上正常输入值时,一切正常。为什么黄瓜版本不起作用?
我所有的黄瓜步骤都过去了!!所以我很困惑
如何将文本字段中的数据发送到控制器方法?
谢谢
答案 0 :(得分:1)
interact with forms in Capybara
有几种方法尝试使用
Then(/^I enter "myPassword" into the "password-input"$/) do
find("#password-input").set("myPassword")
end
而不是
Then(/^I press "password-input"$/) do
find("#password-input").click
end
Then(/^I enter "myPassword" into the "password-input"$/) do
find("#password-input").text("myPassword")
end