読者です 読者をやめる 読者になる 読者になる

capyabaraで要素が重なった時に、最初のものをクリックする方法

rspec rails

capybaraを使っていると、ボタンをクリックするのに要素が重なったりする時があります。

例えば、こんな感じのエラーですね。

Failure/Error: click_on 'コメント'

Capybara::Ambiguous:
  Ambiguous match, found 3 elements matching link or button "コメント"

その時にid/classで特定するようにすればいいのですが、そういうのができない場合に、最初のものをクリックする方法があります。

この時に最初のものを選ぶ場合は、match: :firstとして、最初の要素を選ぶことができます。

click_on 'hogehoge', match: :first

けど、lastはないんですよね。

参考:GitHub - willnet/capybara-readme-ja: Capybara の README 和訳