Capybara で同名の CSS セレクタを持つ複数の HTML 要素から任意の要素を見つける

同じ名前の CSS セレクタを持つ HTML 要素が複数ある場合に、Capybara で任意の要素を見つける方法。

スポンサーリンク

— 環境 —
rails-4.0.1
rspec-rails-2.14.0
capybara-2.2.0

同名クラスの任意の button を Submit する例

例えば、以下のように submit-button という名前のCSSクラスの要素が複数あり、任意の何番目かの要素の button を Submit したい場合。

first または page.all(‘セレクタ’)[n] を使う

一番最初の button を Submit する場合は、first を使います。

2番目、3番目の要素の場合は、page.all で要素を全て見つけ出して、インデックスで指定するのがお手軽っぽいです。配列なので、1 が2番目の要素。

以上です。XPath で要素を指定するのはできるだけ使いたくない、XPath 苦手です。

スポンサーリンク
私は Rails のテストフレームワークには RSpec を使っています。サーバーのテスト用に Serverspec もおすすめです。
スポンサーリンク
 
Twitterを使っていますのでフォローお願いたします!ブログの更新情報もつぶやいてます^^
(英語学習用)

Leave Your Message!