我正在關注Michael Hartl的Ruby on Rails教程。當我使用rspec/capybara時,fill_in方法讓我感到困惑。我有以下看法代碼:fills在Rspec/Capybara中如何工作?
<%= f.label :name %>
<%= f.text_field :name %>
這是我的測試代碼:
fill_in "Name", with: "Example User"
看來,標籤都需要FILL_IN查找輸入字段text_field。如果我要麼f.label
或更改<%= f.text_field :name %>
爲<%= f.text_field :another_name %>
,測試會給我ElementNotFound
錯誤。任何人都可以解釋fill_in在這裏的工作原理嗎?輸入字段和標籤都需要fill_in
方法嗎?
這是否意味着,如果我在表達式中使用的標籤名,FILL_IN方法會在輸入填充後的標籤嗎? – 2014-09-27 21:24:23
@JoeyHu好吧,不是。在我的回答中查看'html'片段 - 標籤的'for'屬性與輸入的'id'具有相同的值,因此無論頁面上的實際位置如何,它們都鏈接在一起。 – twonegatives 2014-09-29 05:49:36