我有一个使用 Minitest::Spec 和 Capybara 的 Rails 3.2 项目。
我的视图包含多个表单,因此我可以编辑或删除记录。示例代码:
<%= simple_form_for @product do |f| %>
<fieldset>
#all of my field code
<div id="form-actions" class="span12 form-horizontal">
<%= f.submit nil, :class => 'create-button', :id => 'update_product' %>
<%= link_to 'Cancel', products_path, :class => 'btn' %>
</div>
</fieldset>
<% end %>
<% if !@product.new_record? %>
<div id="form-actions" class="form-horizontal">
<%= button_to "delete", @product, :confirm => "Are you sure?", :method=>:delete, :class=>'delete-button', :id => 'delete_product' %>
</div>
<% end %>
在我的测试中,如果我调用click_on "update_product"
(更新按钮的 id),则调用第二种形式的删除操作而不是更新操作。