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
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 12:09)