Cucumber のステップで もし /^"(.+)"をクリック$/ do |name| click_on name end というステップを書いていますが、name に複数マッチしてしまうとエラーが発生しています。同じ名前にならないようにすればいいのですが、そうもいかない場合もあります。結局、以下の方法を用意しました。 もし /^(\d+)番目の"(.*?)"をクリック_$/ do |n, name| n = n.to_i - 1 all(:link_or_button, name)[n].click end 何番目のリンクか指定することで回避しました。 もうちょっと詳しく click_buttonと同じことをやろうとすると find(name) や all(name) ではうまくいきません。調べてみると XPath::HTML.link_or_button というメソッドを使用して、f