我正在努力学习如何使用黄瓜并解决了这个问题:
我的表格如下:
<p>
<%= f.label :name, "Nome" %><br />
<%= f.text_field :name %>
</p>
在我的黄瓜特写中,我有:
And I fill in "name" with "Reitoria do Porto"
这使测试失败:
And I fill in "name" with "Reitoria do Porto" # features/step_definitions/web_steps.rb:34
Could not find field: "name" (Webrat::NotFoundError)
(eval):2:in `fill_in'
./features/step_definitions/web_steps.rb:35:in `/^(?:|I )fill in "([^\"]*)" with "([^\"]*)"$/'
features/manage_institutions.feature:10:in `And I fill in "name" with "Reitoria do Porto"'
但是,如果我只是制作这样的表格:
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
测试通过。
如何保留自定义标签名称并使测试通过?
答案 0 :(得分:3)
Webrat使用标签文本来定位要填写的字段。在第一个示例中,您是不是将此标签设置为“Nome”?
And I fill in "Nome" with "Reitoria do Porto"
是否有效?
答案 1 :(得分:1)
您还可以使用HTML中显示的字段名称。因此,如果模型name
属于,请说User
,而不是您应该通过
我用“Reitoria do Porto”填写“user_name”
如果有疑问,只需查看生成的HTML代码并从那里获取字段名称。