Read more

Capybara: Easiest way to get the parent of an element

Deleted user #4117
September 22, 2017Software engineer

If you already selected an element and want to get its parent, you can call find(:xpath, '..') on it.
To get the parents parent, call find(:xpath, '../..').

Example

Illustration UI/UX Design

UI/UX Design by makandra brand

We make sure that your target audience has the best possible experience with your digital product. You get:

  • Design tailored to your audience
  • Proven processes customized to your needs
  • An expert team of experienced designers
Read more Show archive.org snapshot

Find a link which contains a twitter icon and check that it links to the correct page:

<a href="http://twitter.com/">
  <i class="icon is-twitter"></i>
</a>
link = page.find("a .icon.is-twitter").find(:xpath, '..')
link[:href].should == "http://twitter.com/"

There is a good overview on xpath syntax on w3schools Show archive.org snapshot . But as xpath expressions can get quite complex and hard to understand for fellow developers, it's best to keep them short and simple.

Posted to makandra dev (2017-09-22 14:09)