Что я делаю для такого рода вещей, так это напишу такой шаг:
When I edit article "Some article name or id"
Тогда мое определение шага выглядит так:
When %|I edit article "$article_name"| do |article_name|
article = Article.find_by_name(article_name)
within "#article_#{article.id}" do
#do whatever you need to do for that article
click "Edit"
end
end
В моих представлениях я четко определяю идентификатор для некоторого родительского элемента, который будет достаточно охватывать вызовы, подобные этому. Этот шаблон избавляет вас от необходимости слишком сильно пачкаться в самих куках, но при этом дает вам определенную степень гибкости. Например:
<% @articles.each do |article| %>
<div id="article_<%= article.id %>">
Stuff in here <%= link_to "Edit", edit_article_path(article) %>
</div>
<% end %>