我已經有方法,爲我填充水豚的形式。水豚檢查輸入類型(fill_in vs檢查與選擇)
從FactoryGirl
得到一些默認PARAMS之後,我的那朵循環方式:
form_attributes.each do |field, value|
if value == false
value == true ? check("#{model}_#{field}") : uncheck("#{model}_#{field}")
elsif try(:select,value, from: "#{model}_#{field}")
select value, from: "#{model}_#{field}"
elsif try(:fill_in, "#{model}_#{field}", with: value)
fill_in "#{model}_#{field}", with: value
else
raise Capybara::ElementNotFound
end
end
不幸的是try(:select,value, from: "#{model}_#{field}")
會引發錯誤Capybara::ElementNotFound: Unable to find select box
...
如何判斷水豚,以check
當元素是checkbot和選擇當元素是<select>
?
這裏是form_attributes
一些示例:
{:attitude=>"happy",
:feedback_date=>2014-08-19 15:35:14 +0200,
:feedback_action=>"Refund",
:feedback_details=>"....",
:approved=>"true"}
問題是它始終可見,但您無法填充複選框或選擇text_field ... – 2014-08-29 14:33:51
啊。我認爲提出的錯誤是在if(statement)elsif(聲明)中,而不是在方法體內。 @FilipBartuzi,你也可以嘗試採取救援措施。 – Hectron 2014-08-29 14:54:24